PHP چیست؟
PHP
یک زبان برنامهنویسی سمت سرور است که برای ساخت وبسایتهای پویا و تعاملی استفاده میشود.
یعنی درخواست کاربر در سرور پردازش میشود، به دیتابیس متصل میشود و نتیجه نهایی در سایت نمایش داده میشود.
کاربردهای PHP:
• سایت شرکتی
• فروشگاه اینترنتی
• وبلاگ
• پنل مدیریت
• سیستمهای تحت وب
اگر دوست داری آموزشهای بیشتری درباره طراحی وب و برنامهنویسی ببینی، این پست را ذخیره کن و برای دوستانت بفرست.
فرانتاند و بکاند دو بخش اصلیِ ساخت یک وبسایت یا اپلیکیشن هستند:
## فرانتاند چیست؟
فرانتاند بخشی است که کاربر میبیند و با آن تعامل میکند.
مثال:
- دکمهها
- فرمها
- منوها
- رنگها و ظاهر سایت
- صفحهای که در مرورگر باز میشود
### تکنولوژیهای رایج فرانتاند:
- HTML برای ساختار
- CSS برای ظاهر و استایل
- JavaScript برای تعامل و رفتار
- فریمورکها: React، Vue، Angular
### وظیفه برنامهنویس فرانتاند:
- طراحی رابط کاربری
- واکنشگرا کردن سایت برای موبایل و دسکتاپ
- ارتباط با بکاند از طریق API
- بهبود تجربه کاربری
---
## بکاند چیست؟
بکاند بخشی است که پشت صحنه کار میکند و کاربر مستقیم آن را نمیبیند.
مثال:
- ذخیره اطلاعات کاربران
- بررسی رمز عبور هنگام ورود
- مدیریت سفارشها
- اتصال به دیتابیس
- پردازش منطق برنامه
### تکنولوژیهای رایج بکاند:
- Node.js
- Python با Django / Flask / FastAPI
- PHP
- Java
- C#
- Ruby
### وظیفه برنامهنویس بکاند:
- نوشتن منطق اصلی برنامه
- ساخت API
- کار با پایگاه داده
- مدیریت امنیت، احراز هویت و سرور
---
## تفاوت ساده با یک مثال
فرض کن یک سایت فروشگاهی داریم:
### فرانتاند:
- صفحه محصولات را نشان میدهد
- دکمه «افزودن به سبد خرید» دارد
- فرم ورود را نمایش میدهد
### بکاند:
- اطلاعات محصولات را از دیتابیس میگیرد
- وقتی روی «افزودن به سبد خرید» میزنی، سفارش را ثبت میکند
- نام کاربری و رمز را بررسی میکند
---
## ارتباط فرانتاند و بکاند
فرانتاند معمولاً از طریق API با بکاند صحبت میکند.
مثلاً:
1. کاربر روی دکمه ورود کلیک میکند
2. فرانتاند اطلاعات را به بکاند میفرستد
3. بکاند بررسی میکند
4. نتیجه را برمیگرداند
5. فرانتاند پیام «ورود موفق بود» را نشان میدهد
---
## خیلی خلاصه
- فرانتاند = ظاهر و چیزی که کاربر میبیند
- بکاند = منطق و پردازش پشت صحنه
اگر بخواهی، میتوانم در مرحله بعدی با یک مثال واقعی و ساده از ساخت یک سایت نشان بدهم که فرانتاند و بکاند دقیقاً چطور با هم کار میکنند.
برنامه خروجی php دارای دیتابیس my sql
https://www.apachefriends.org/download.html
دانلود xampp برای تمام نسخه های ویندوز و لینوکس و مک
برنامه IDE نوشتن کد vscode در نسخه های ویندوز مک و لینوکس
https://code.visualstudio.com/Download
آموزش صفر تا صد PHP
برنامه خروجی php دارای دیتابیس my sql https://www.apachefriends.org/download.html دانلود xampp برای
اگر نتونستی دانلود کنی از سایت سافت 98 کمک بگیر
https://soft98.ir/internet/webmaster-tools/13861-xampp-download.html
برای شروع برنامهنویسی حرفهای PHP در VS Code، به چند افزونه کلیدی نیاز دارید. مهمترین آنها PHP Intelephense است که هوشمندی و امکانات پیشرفته را به محیط شما اضافه میکند.
در ادامه با بهترین افزونههای حال حاضر آشنا میشوید:
🧠 افزونه اصلی و ضروری: PHP Intelephense
این افزونه را باید قلب تپنده توسعه PHP در VS Code دانست. تقریباً تمام امکانات حرفهای را که از یک IDE انتظار دارید، فراهم میکند.
* قابلیتها: تکمیل هوشمند کد (IntelliSense)، رفتن به تعریف توابع (
Go to Definition)، یافتن تمام ارجاعات (
Find All References)، بازسازی کد (
Rename Symbol)، نمایش خطاها و اخطارها هنگام تایپ، و پشتیبانی عالی از فریمورکهایی مثل لاراول. * نکته مهم: برای جلوگیری از تداخل و دریافت پیشنهادات تکراری، باید پیشنهاددهنده پیشفرض VS Code را غیرفعال کنید. کافی است در فایل تنظیمات (settings.json) خط زیر را اضافه کنید:
"php.suggest.basic": false🐛 اشکالزدایی (Debugging): PHP Debug اگر تا حالا با
var_dumpو
echoبرای پیدا کردن باگ کلنجار رفتهاید، این افزونه را نجاتبخش خود خواهید دید. * کاربرد: این افزونه Xdebug را به VS Code متصل میکند. میتوانید نقاط توقف (
Breakpoint) بگذارید، متغیرها را گام به گام بررسی کنید و جریان اجرای کد را خط به خط دنبال کنید. ✨ افزایش بهرهوری و زیبایی کد * PHP DocBlocker: با تایپ
/**و فشردن کلید Enter بالای یک تابع، به صورت خودکار یک قالب مستندسازی (PHPDoc) با پارامترهای تابع برایتان میسازد. برای نوشتن کدهای قابل فهم و حرفهای عالی است. * TemPHPest: یک افزونه همهکاره و جدید که کلی قابلیت ریز و درشت دارد. مثل تغییر خودکار کوتیشنهای ساده به دوتایی وقتی میخواهید از یک متغیر درون متن استفاده کنید، یا ساخت خودکار فایلهای کلاس با namespace مناسب. برای بالا بردن سرعت کدنویسی روزمره فوقالعاده است. * PHP CS Fixer: اگر میخواهید کدتان همیشه تمیز، مرتب و مطابق با استانداردهای جهانی (مثل PSR-12) باشد، این افزونه را تنظیم کنید تا هنگام ذخیره فایل (
Format on Save) به طور خودکار کدتان را مرتب کند. --- 📝 جمعبندی برای شروع به عنوان یک شروع عالی و بدون مشکل، پیشنهاد من این است: 1. PHP Intelephense را نصب کنید (هسته اصلی). 2. PHP Debug را نصب کنید (برای موقعی که کدتان خطا میدهد). 3. حتماً تنظیم
"php.suggest.basic": falseرا اعمال کنید تا Intelephense درست کار کند. این سه قدم شما را از یک مبتدی به یک توسعهدهنده حرفهای تبدیل میکند که از ابزارهای درست استفاده میکند. بقیه افزونهها را بعداً و به مرور زمان میتوانید اضافه کنید.
یک نکته مهم برای آموزش:
اگر مخاطبانتان در ویرایش settings.json مشکل دسترسی داشتند، همین راهحل ساده (Run as administrator) را به آنها آموزش دهید. این یک مشکل رایج برای تازهکارهاست که با آموزش شما حل میشود.
خیلی خوب! درس دوم رو آماده کنید. اینجا یه راهنمای کامل و روان برای آموزش به مخاطبانت هست:
---
درس دوم: اجرای اولین پروژه PHP در XAMPP
هدف درس:
ساخت اولین فایل PHP و دیدن خروجی در مرورگر
---
مرحله 1: پیدا کردن پوشه htdocs
جایی که باید فایلهای پروژه رو ذخیره کنید:
مسیر نصب XAMPP → پوشه htdocsمثال: - اگر XAMPP رو در
C:\xamppنصب کردید: C:\xampp\htdocs - اگر در G:\xampp نصب کردید: G:\xampp\htdocs > نکته مهم: هر فایل PHP فقط در داخل پوشه htdocs یا زیرپوشههای آن کار میکند. --- مرحله 2: ساخت پوشه پروژه (اختیاری اما حرفهای) برای منظم بودن، داخل htdocs یه پوشه جدید بسازید با نام: - my-first-project - یا هر نام دلخواه (بدون فاصله، فقط حروف انگلیسی) G:\xampp\htdocs\my-first-project\ --- مرحله 3: ساخت اولین فایل PHP در VS Code 1. VS Code را باز کنید 2. فایل جدید بسازید (Ctrl + N) 3. کد زیر را بنویسید: <?php echo "سلام دنیا!"; echo "<br>"; echo "اولین پروژه PHP من در XAMPP"; ?> 4. فایل را ذخیره کنید (
Ctrl + S) با نام: - `index.php` - در مسیر:
G:\xampp\htdocs\my-first-project\> چرا اسم `index.php`؟ > مرورگرها وقتی وارد یک پوشه میشوند، اول به دنبال فایل `index.php` یا index.html میگردند. --- مرحله 4: روشن کردن Apache در XAMPP 1. XAMPP Control Panel را باز کنید (به عنوان Administrator) 2. کنار Apache**، روی دکمه **Start کلیک کنید 3. رنگ دکمه از قرمز به سبز تغییر میکند و کنارش نوشته میشود Running > اگر خطا گرفت، مطمئن شوید پورت 80 توسط برنامه دیگری اشغال نشده باشد. --- مرحله 5: دیدن خروجی در مرورگر 1. مرورگر خود را باز کنید (Chrome، Firefox، Edge) 2. در نوار آدرس، تایپ کنید: http://localhost/my-first-project/ یا http://127.0.0.1/my-first-project/ 3. Enter بزنید --- ✅ خروجی مورد انتظار: سلام دنیا! اولین پروژه PHP من در XAMPP --- 🧪 تمرین برای مخاطبان: کد زیر را امتحان کنید تا با توابع مختلف آشنا شوند: <?php // نمایش متن echo "خوش آمدید!"; // نمایش تاریخ امروز echo "<br> امروز: " . date("Y-m-d"); // نمایش ساعت echo "<br> ساعت: " . date("H:i:s"); // محاسبه ساده $num1 = 10; $num2 = 20; $sum = $num1 + $num2; echo "<br> جمع $num1 و $num2 برابر است با: $sum"; ?> --- ❌ مشکلات رایج و راهحل: | مشکل | راهحل | |------|--------| | صفحه خالی میآید | فراموش کردید
<?phpرا بنویسید یا Apache روشن نیست | | کد روی صفحه نشان میدهد | XAMPP اجرا نیست یا به جای
localhostفایل را مستقیماً باز کردهاید | | خطای 404 | مسیر فایل اشتباه است یا فایل در
htdocsنیست | | دسترسی denied | XAMPP را به عنوان Administrator اجرا کنید | --- 📌 نکات کلاسی برای مخاطبان: 1. هر بار که کد را تغییر دادید**، برای دیدن تغییرات کافی است مرورگر را رفرش کنید (`F5`) 2. برای بستن XAMPP، اول Apache را **Stop کنید، بعد کنترل پنل را ببندید 3. اگر از
localhostخسته شدید، میتوانید از 127.0.0.1 استفاده کنید (یکی هستند) --- 🎯 جمعبندی درس دوم: ✅ پوشه
htdocsرا پیدا کردیم ✅ اولین فایل index.php را ساختیم ✅ Apache را در XAMPP روشن کردیم ✅ خروجی را در مرورگر دیدیم تکلیف: یک فایل به نام about.php بسازید و داخل آن یک معرفی کوتاه از خودتان بنویسید. آدرس آن در مرورگر:
http://localhost/my-first-project/about.php