الجزء الحادي عشر – الأدوات المتقدمة في PHP- سلسلة FSWD – PHP

أولاً: إطار عمل Laravel
Laravel هو أحد أشهر وأقوى أطر العمل (Frameworks) في PHP. يساعد في تطوير تطبيقات الويب بشكل سريع ومرن من خلال توفير العديد من الأدوات المتقدمة التي تسهل عملية التطوير مثل إدارة قواعد البيانات، التوجيه (Routing)، التحقق من المدخلات، التخزين المؤقت (Caching)، التوثيق (Authentication)، وغيرها.
مزايا استخدام Laravel:
-
سهولة الاستخدام: Laravel يحتوي على Syntax بسيط وسهل الفهم للمطورين الجدد.
-
توجيه مرن (Routing): إمكانية توجيه الطلبات بشكل مرن باستخدام قواعد مرنة.
-
إدارة قواعد البيانات (Eloquent ORM): يوفر Laravel Eloquent ORM لإدارة قواعد البيانات بطريقة بسيطة باستخدام Active Record.
-
التحقق من المدخلات (Validation): يمكن التحقق من صحة المدخلات بطريقة سلسة.
-
التحقق من الأمان (Security): يوفر Laravel آليات مدمجة لحماية التطبيق مثل حماية من هجمات CSRF وXSS.
-
الاختبارات (Testing): يحتوي Laravel على أدوات لاختبار تطبيقاتك بشكل سهل.
كيفية البدء مع Laravel:
1. تنصيب Laravel:
لتنصيب Laravel، يجب أن يكون لديك Composer مثبت على جهازك. إذا لم يكن مثبتًا، يمكنك تثبيته من رابط Composer الرسمي.
لتنصيب Laravel، افتح سطر الأوامر واستخدم الأمر التالي
composer create-project --prefer-dist laravel/laravel myapp
سيقوم هذا الأمر بتنزيل أحدث إصدار من Laravel وتثبيته في مجلد myapp
.
2. تشغيل الخادم المحلي (Local Development Server):
بعد تنصيب Laravel، يمكنك تشغيل الخادم المحلي باستخدام
php artisan serve
ستتمكن من الوصول إلى تطبيق Laravel عبر المتصفح عن طريق العنوان http://127.0.0.1:8000
.
3. بنية Laravel:
-
الـ Routes: يتم تحديد مسارات التطبيق في ملف
routes/web.php
. -
Controllers: تستخدم
Controllers
لتنظيم منطق التطبيق وملاءمة كل مسار مع الـ view المناسب. -
Views: يتم عرض المحتوى للمستخدم من خلال Blade، محرك القوالب الخاص بـ Laravel.
-
Models: تمثل بيانات التطبيق وتتعامل مع قاعدة البيانات باستخدام Eloquent ORM.
مثال على استخدام Laravel:
-
Route
// في ملف routes/web.php
Route::get('/hello', function () {
return 'Hello, World!';
});
Controller:
// في ملف app/Http/Controllers/HomeController.php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class HomeController extends Controller
{
public function index() {
return view('welcome');
}
}
View (Blade Template):
// في ملف resources/views/welcome.blade.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Welcome</title>
</head>
<body>
<h1>Welcome to Laravel!</h1>
</body>
</html>
4. التعامل مع قواعد البيانات في Laravel:
Laravel يستخدم Eloquent ORM لإدارة قواعد البيانات بشكل سهل. يمكنك تعريف الجداول كنماذج (Models) وتحديد العلاقات بينها.
-
إنشاء Model
php artisan make:model Post -m
الـ -m
سيقوم بإنشاء ملف Migration لتحديد هيكل الجدول.
-
الـ Migration:
// في ملف database/migrations/xxxx_xx_xx_create_posts_table.php
public function up()
{
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->text('content');
$table->timestamps();
});
}
بعد كتابة الـ Migration، يمكنك تشغيله باستخدام:
php artisan migrate
5. إدارة التحقق من المدخلات (Validation):
يمكنك التحقق من المدخلات بسهولة باستخدام:
// في Controller
$request->validate([
'title' => 'required|max:255',
'content' => 'required',
]);
6. إدارة الجلسات (Sessions) و Cookies:
Laravel يوفر واجهة بسيطة لإدارة الجلسات
// لتخزين البيانات في الجلسة
session(['key' => 'value']);
// لاسترجاع البيانات
$value = session('key');
ثانيًا: استخدام Composer لإدارة الحزم
Composer هو مدير الحزم (Package Manager) لـ PHP. يساعد في تحميل الحزم (مثل Laravel وملحقات أخرى) وتحديثها وإدارتها بشكل فعال.
مزايا Composer:
-
إدارة التبعيات: يسهل Composer تثبيت التبعيات المطلوبة لمشروع PHP.
-
تحديث الحزم: يمكنك تحديث الحزم إلى أحدث الإصدارات باستخدام Composer.
-
مستودعات الحزم: يوفر Composer مستودعات للحزم مثل Packagist.
كيفية استخدام Composer:
1. تثبيت Composer:
إذا لم يكن لديك Composer، قم بتحميله من رابط Composer الرسمي.
2. إنشاء مشروع جديد باستخدام Composer
composer create-project --prefer-dist laravel/laravel myapp
3. إضافة حزمة جديدة:
لاستضافة مكتبات جديدة في المشروع، استخدم الأمر composer require
:
composer require guzzlehttp/guzzle
سوف يقوم Composer بتثبيت مكتبة Guzzle، وهي مكتبة لعمل طلبات HTTP.
4. إدارة التبعيات:
لحذف حزمة من المشروع، استخدم الأمر التالي
composer remove guzzlehttp/guzzle
5. تحديث الحزم:
لتحديث جميع الحزم المثبتة إلى أحدث الإصدارات، استخدم
composer update
6. إدارة حزم Composer بشكل يدوي:
تتم إدارة الحزم بشكل رئيسي عبر ملف composer.json
الذي يحتوي على قائمة بالتبعيات (dependencies) اللازمة للمشروع.
مثال على composer.json
{
"name": "myapp",
"description": "My Laravel Application",
"require": {
"php": "^7.4",
"laravel/framework": "^8.0",
"guzzlehttp/guzzle": "^7.0"
}
}
أوامر Composer الأساسية:
-
إظهار جميع الحزم المثبتة:
composer show
تثبيت الحزم بناءً على ملف composer.json:
composer install
إنشاء ملف composer.lock
لضمان تثبيت الحزم نفسها في كل بيئة تطوير:
composer update --lock
ملخص:
-
Laravel هو إطار عمل قوي لبناء تطبيقات الويب باستخدام PHP ويوفر العديد من الأدوات المتقدمة مثل Eloquent ORM، Blade Templates، و Validation.
-
Composer هو مدير حزم PHP الذي يساعد في إدارة المكتبات والتبعيات الخاصة بالمشروع، مما يسهل تثبيت وتحديث الحزم اللازمة لتطوير التطبيقات
💰 هل تبحث عن طريقة سهلة للربح من الإنترنت؟
ابدأ الآن واكسب أموالًا حقيقية من خلال خطوات بسيطة! 🌟
اضغط وابدأ الربح