بکاند
PHP یا لاراول؟ مسیر یادگیری برنامهنویسی بکاند در سبزوار
خیلی از کسانی که میخواهند بکاند یاد بگیرند اول این سؤال را میپرسند: «PHP یا لاراول؟». این دو رقیب هم نیستند. PHP زبان است و لاراول ابزاری است که با همین زبان نوشته شده تا ساخت سایت و سامانه سریعتر و منظمتر شود. پس پرسش درست این است که کدام را اول بخوانیم.
بکاند یعنی چه؟
وقتی در یک سایت ثبتنام میکنید، وارد میشوید، چیزی میخرید یا نظری مینویسید، یک برنامه در پشت صحنه آن را میگیرد، بررسی میکند و در پایگاه داده ذخیره میکند. این بخش بکاند است. ظاهر سایت را فرانتاند میسازد و کارهای پشت پرده را بکاند.
PHP چه کاری میکند؟
PHP یکی از قدیمیترین و پرکاربردترین زبانهای ساخت سایت است. فرم را میگیرد، اطلاعات را بررسی میکند و با MySQL ذخیره و جستجو میکند. چیزهایی که در دورهی PHP یاد میگیرید پایهی هر کار وب دیگری هم هست: متغیر و آرایه، فرم، پایگاه داده، شیءگرایی، ورود کاربر و امنیت.
<?php
$name = trim($_POST['name'] ?? '');
if ($name === '') {
echo 'Please enter your name';
} else {
echo 'Hello ' . htmlspecialchars($name);
}این کد نام را از یک فرم میگیرد، خالی نبودنش را بررسی میکند و آن را امن چاپ میکند. همین تابع htmlspecialchars جلوی یکی از حملههای رایج را میگیرد.
لاراول چه چیزی اضافه میکند؟
لاراول یک فریمورک است، یعنی مجموعهای از قطعهها و قاعدههای آماده برای ساخت پروژههای بزرگتر. مسیریابی، قالب صفحهها، ارتباط با پایگاه داده، ورود و ثبتنام و ساخت API را به شکل مرتب و استاندارد به شما میدهد. نتیجه این است که پروژهی شما برای کسی که بعداً آن را میخواند، قابل فهمتر است.
Route::get('/courses', function () {
return view('courses', ['list' => Course::all()]);
});این چند خط یک آدرس میسازد، همهی دورهها را از پایگاه داده میخواند و به یک صفحه میفرستد. در PHP ساده، همین کار چند فایل و کد بیشتری میخواهد.
مقایسهی PHP و لاراول
| معیار | PHP ساده | لاراول |
|---|---|---|
| نقش | زبان برنامهنویسی | فریمورک روی PHP |
| مناسب برای | یاد گرفتن اصول و ساخت سایتهای کوچک | پروژههای بزرگتر، سامانه و API |
| ساختار پروژه | هر کس به شیوهی خودش مینویسد | قاعده و پوشهبندی استاندارد |
| پیشنیاز | HTML و CSS | مبانی PHP و آشنایی با MySQL |
| در الکترا | ۳۶ جلسه، ۵۴ ساعت | ۴۰ جلسه، ۶۰ ساعت |
مسیر پیشنهادی
- اول HTML و CSS و کمی جاوااسکریپت را یاد بگیرید.
- بعد PHP و MySQL: فرم، پایگاه داده، ورود کاربر و یک پروژهی کوچک مثل فروشگاه ساده.
- بعد لاراول: ساختار پروژه، مدل و رابطهها، احراز هویت، ساخت API و انتشار.
اگر فقط میخواهید یک سایت ساده بسازید، دورهی PHP کافی است. اگر هدفتان کار حرفهای در تیم یا نوشتن API برای اپلیکیشن است، لاراول لازم میشود.
اشتباههای رایج
- رفتن سراغ لاراول بدون فهمیدن PHP؛ نتیجهاش کپی کردن کد بدون درک است.
- ذخیرهی رمز عبور به صورت متن ساده، به جای رمزنگاری.
- اعتماد به ورودی کاربر و نگذاشتن اعتبارسنجی.
- ساخت پروژهی بزرگ قبل از تمرین پروژههای کوچک.
MySQL؛ جایی که اطلاعات میماند
سایت بدون پایگاه داده فقط یک صفحهی ثابت است. در MySQL اطلاعات در جدولها نگه داشته میشود و با زبان SQL میتوانید آنها را بخوانید و تغییر دهید. مثلاً برای گرفتن دورههای فعال:
SELECT title, sessions FROM courses WHERE active = 1 ORDER BY sessions DESC;
در PHP همین کوئری را با PDO و پارامتر امن اجرا میکنید، نه با چسباندن مستقیم ورودی کاربر به متن SQL:
$stmt = $pdo->prepare('SELECT * FROM users WHERE email = ?');
$stmt->execute([$email]);
$user = $stmt->fetch();این روش جلوی حملهی رایج تزریق SQL را میگیرد، چون ورودی همیشه بهعنوان داده تفسیر میشود، نه دستور.
چهار اصل امنیت که از روز اول باید رعایت کنید
- هیچ ورودیای را باور نکنید: هر چیزی که از فرم یا آدرس میآید باید بررسی شود.
- رمز را رمزنگاری کنید: رمز عبور هیچوقت به شکل متن ساده ذخیره نمیشود. از توابع آمادهی هش استفاده کنید.
- خروجی را امن چاپ کنید: هر متنی که کاربر وارد کرده و دوباره نشان میدهید باید فیلتر شود.
- کمترین دسترسی را بدهید: هر کاربر فقط به چیزهایی دسترسی داشته باشد که لازم دارد.
Eloquent؛ کار با پایگاه داده در لاراول
در لاراول به جای نوشتن SQL، با مدل کار میکنید. هر جدول یک مدل دارد و روابط بین جدولها هم تعریف میشود:
$courses = Course::where('active', true)
->orderBy('sessions', 'desc')
->get();همان کوئری قبلی است، ولی خواناتر و قابل استفادهی دوباره. این ساختار وقتی پروژه بزرگ میشود خیلی کمک میکند.
پروژههای تمرینی برای هر مرحله
- PHP مقدماتی: فرم تماس که پیام را بررسی و ذخیره میکند.
- PHP و MySQL: دفترچهی تلفن با افزودن، ویرایش، حذف و جستجو.
- ورود و امنیت: سیستم ثبتنام و ورود با رمز رمزنگاریشده.
- لاراول: وبلاگ با نقش کاربری مدیر و نویسنده.
- API: سرویسی که لیست دورهها را به صورت JSON برای یک اپلیکیشن میفرستد.
این مهارت به چه کاری میآید؟
کسی که PHP و لاراول بلد است میتواند سایتهای سفارشی با پنل مدیریت، فروشگاه و سامانهی ثبتنام بسازد، برای اپلیکیشن موبایل API بنویسد یا در یک تیم وب بهعنوان برنامهنویس بکاند کار کند. شروع کار معمولاً با پروژههای کوچک فریلنسری است و نمونهکار شما مهمترین مدرکتان.
دورهها در سبزوار
در سبزوار میتوانید این مسیر را حضوری بروید: طراحی سایت برای HTML، CSS و جاوااسکریپت، بعد PHP با پروژهی فروشگاه و پنل مدیریت و در ادامه لاراول با ساخت سامانه و API. اگر مطمئن نیستید از کجا شروع کنید، دورهی بکاند هم هست و در جلسهی مشاوره انتخاب مناسب سطح شما را پیدا میکنیم. با ۰۹۳۰۹۱۱۸۵۵۸ تماس بگیرید تا سطحتان را رایگان بسنجیم.
سوالات متداول
میشود مستقیم سراغ لاراول رفت؟
بهتر است نه. لاراول روی PHP ساخته شده و بدون مبانی PHP و آشنایی با MySQL، خیلی از چیزها بیدلیل پیچیده به نظر میرسد.
دورهی PHP الکترا چند جلسه است؟
۳۶ جلسه و ۵۴ ساعت. پیشنیاز آن آشنایی با HTML و CSS است.
دورهی لاراول چند جلسه است؟
۴۰ جلسه و ۶۰ ساعت. مبانی PHP و آشنایی با MySQL لازم است.
بعد از لاراول میتوانم برای اپلیکیشن موبایل هم API بنویسم؟
بله. ساخت API برای اپلیکیشن موبایل و فرانتاند بخشی از دورهی لاراول است.
