بایگانی برچسب: s

آموزش PHP – جلسه یازدهم: اتصال به بانک اطلاعاتی MySQL

در سری آموزش‌های پی‌اچ‌پی تا‌کنون با مباحث زیادی آشنا شده‌اید و حال نوبت مبحث اتصال به بانک‌های داده است. در واقع پویا بودن صفحات وب پی‌اچ‌پی بدون اتصال به بانک‌های اطلاعاتی بی‌معنی به نظر می‌رسد. در این جلسه می‌خواهیم روش اتصال به یکی از محبوب‌ترین و پرکاربردترین بانک‌های اطلاعاتی یعنی MySql را به شما آموزش دهیم. در ادامه با ما همراه باشید.

با اتصال به بانک‌های اطلاعاتی تحت سرور می‌توانیم داده‌های موردنظرمان را در جداول این بانک‌های اطلاعاتی ذخیره کنیم و در مواقع لزوم به سرعت به آن‌ها دسترسی داشته باشیم. همچنین در مواقعی نیاز به به‌روزرسانی اطلاعات و نیز حذف آن‌ها خواهیم داشت.

پی‌اچ‌پی از بانک‌های اطلاعاتی مختلفی پشتیبانی می‌کند. اما یکی از محبوب‌ترین و پراستفاده‌ترین بانک‌های اطلاعاتی در بین برنامه‌نویسان از زبان MySQL است. در این جلسه روش اتصال به این بانک داده را با PHP به شما آموزش خواهیم داد و نیز ۴ عملیات اصلی کار با بانک‌های اطلاعاتی را به مرور فرا خواهید گرفت.

از این جلسه شروع به ساخت یک CMS (سیستم مدیریت محتوا = Content Managment System) می‌کنیم. قبل از هر چیز نیاز است الگوریتم ساده‌ای برای این پروژه ایجاد کنید. اما در اینجا برای جلوگیری از سنگین شدن این جلسه بخش الگوریتم را به خودتان واگذار می‌کنیم.

در کل باید بدانید قصد داریم یک پروژه‌ بسازیم که با بانک اطلاعاتی MYSQL ارتباط داشته باشد و بتوان با استفاده از آن مطالب جدیدی را در بانک داده ذخیره‌سازی کرد. هدف ما ایجاد بخشی برای ارسال مطلب، بخشی برای ویرایش مطالب ارسال شده، امکان حذف مطالب ارسال شده و نیز نمایش مطالب ارسال شده است. چهار عمل اصلی در ارتباط با بانک‌های داده وجود دارد که به اختصار آن‌ها را CURD می‌نامند. C برای ساختن (Create) و U برای به‌روزرسانی (Update) و R برای خواندن (Read) و نهایتا D برای حذف (Delete).

اتصال به بانک داده

قبل از این کار یک پوشه جدید در پوشه htdocs نرم‌افزار Xampp ایجاد کنید و نام آن را cms بگذارید. حالا در پوشه cms یک فایل به نام config.php ایجاد کنید. این فایل در واقع تنظیمات مربوط به سیستم‌ ما را نگه‌داری خواهد کرد. همچنین از طریق این فایل به بانک داده متصل خواهیم شد.

اما ابتدا باید بانک اطلاعاتی موردنظرمان را ایجاد کنید. پس از اجرای Xampp در پنل مدیریت این نرم‌افزار سرویس MySQL را نیز همانند سرویس Apache اجرا کنید.

۷۵c58fb6-1b54-4669-8a90-d3ff9e89c143حالا مرورگر خود را باز کرده و به آدرس http://127.0.0.1/phpmyadmin بروید. در این بخش شما می‌توانید بانک‌های اطلاعاتی سرور محلی خود را مشاهده، ایجاد و حذف کنید. پس از اجرای آدرس فوق باید با صفحه‌ای مانند زیر مواجه شوید.

ecbe80cb-025a-4b01-a3d1-12e6a6bf924cهمان‌طور که در تصویر با کادر قرمز مشخص شده، روی Database کلیک کنید. در این بخش می‌توانید یک بانک اطلاعاتی جدید بسازید. نام بانک اطلاعات موردنظر خود را باید در کادر مربوطه همانند تصویر زیر وارد کنید. همچنین نوع یونیکد موردنظر برای این بانک‌ داده را هم با استفاده از منو کشویی مقابل فیلد نام آن، می‌توانید تعیین کنید. از آنجا که زبان ما فارسی است بهترین کار در این مرحله انتخاب یونیکد utf-8 است. پس همانند تصویر زیر نام بانک اطلاعاتی جدید خود را cms و نوع آن را هم utf8-general-ci تعیین کنید.

۴۳۵۲۷۰۳۵-۲۷۵۷-۴e28-936f-9286b9b6ca89  حال باید جداول موردنظرتان را ایجاد کنید. اما برای جلوگیری از سنگین شدن مبحث و این‌که هدف ما آموزش php است، جداول موردنیاز برای این پروژه را ساخته‌ایم و شما نیز برای ساختن این جداول مراحل زیر را پس از ساختن بانک اطلاعاتی یاد شده انجام دهید. پس از اینکه روی دکمه Create کلیک کنید، بانک اطلاعاتی cms ایجاد خواهد شد. حالا وارد بخش sql شوید و همانند تصویری که در ادامه می‌بینید، کد زیر را در بخش مربوطه قرار داده و سپس بر روی دکمه Go کلیک کنید.

— phpMyAdmin SQL Dump
— version 4.5.1
— http://www.phpmyadmin.net

— Host: 127.0.0.1
— Generation Time: May 28, 2016 at 02:13 PM
— Server version: 10.1.9-MariaDB
— PHP Version: 5.6.15

SET SQL_MODE = “NO_AUTO_VALUE_ON_ZERO”;
SET time_zone = “+00:00”;

/*!۴۰۱۰۱ SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!۴۰۱۰۱ SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!۴۰۱۰۱ SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!۴۰۱۰۱ SET NAMES utf8mb4 */;


— Database: `cms`

— ——————————————————–


— Table structure for table `posts`

CREATE TABLE `posts` (
`id` int(11) NOT NULL,
`title` varchar(200) NOT NULL,
`text` text NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


— Indexes for dumped tables


— Indexes for table `posts`

ALTER TABLE `posts`
ADD PRIMARY KEY (`id`);


— AUTO_INCREMENT for dumped tables


— AUTO_INCREMENT for table `posts`

ALTER TABLE `posts`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
/*!۴۰۱۰۱ SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!۴۰۱۰۱ SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!۴۰۱۰۱ SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

کد بالا برای ایجاد یک جدول به نام posts است که این جدول سه فیلد دارد. برای هر مطلب یک فیلد برای شماره مطلب وجود دارد که این شماره برای هر رکورد از جدول یکتا خواهد بود. همچنین یک فیلد برای عنوان و یک فیلد نیز برای متن مطلب درنظرگرفته‌ایم. یونیکد این جدول و تمامی فیلد‌های آن نیز utf8-general-ci است.

۲c03ac69-2d22-491a-bf6c-6232831e599fاصلا نگران این بخش نباشید چرا که بعدا مفصلا به آن خواهیم پرداخت. فقط به یاد داشته باشید که تاکنون چه کارهایی انجام دادیم.

حالا برگردیم به بخش پی‌اچ‌پی. فایل config.php را باز کنید و کد زیر را در آن قرار دهید:

<?php
$dbhost = “localhost”;
$dbuser = “root”;
$dbname = “cms”;
$dbpass = “”;

$connect_db = mysql_connect ($dbhost, $dbuser, $dbpass);

if ($connect_db){
echo “we Connected to db successfully!”;
}else{
echo “error in connecting db”;
}
?>

در کد بالا ابتدا ۴ متغیر تعریف کرده و آن‌ها را مقداردهی کردیم. برای اتصال به بانک‌اطلاعاتی mysql در php نیاز به ۴ مشخصه خواهید داشت. آدرس میزبان بانک داده که در اینجا متغیر dbhost است، نام کاربری بانک داده که در اینجا dbuser است، نام بانک داده که در اینجا dbname است و نهایتا رمزعبور کاربر بانک داده که در اینجا dbpass است. در بیشتر مواقع آدرس میزبان بانک داده همان localhost خواهد بود. در نرم‌افزار زمپ نام کاربری تمام بانک‌های داده‌‌ای که می‌سازیم root است و این کاربر رمزعبور ندارد و به همین دلیل مقدار dbpass را خالی گذاشته‌ایم. نام بانک داده‌ نیز همان نامی خواهد بود که در هنگام ساختن بانک اطلاعاتی موردنظر خود تعیین کرده‌اید و در این پروژه نام تعیین شده ما cms بود. 

حال باید با استفاده از تابع mysql_connect به بانک داده متصل شویم. این تابع سه آرگومان ورودی دارد که به ترتیب آدرس میزبان بانک داده، نام کاربری بانک داده و رمزعبور کاربر بانک داده هستند. خروجی این تابع نیز یا true خواهد بود یا false. در کد بالا ما خروجی این تابع را در متغیر connect_db ذخیره می‌کنیم و سپس با یک دستور if بررسی کرده‌ایم که اگر اتصال به درستی برقرار شد پیام مناسب به کاربر نمایش داده شود و اگر اتصال انجام نشده بود پیام خطای عدم اتصال به بانک داده نمایان شود. 

پس از این‌که مراحل فوق را انجام دادید یک فایل دیگر به نام index.php در پوشه cms ایجاد کنید. سپس در این فایل کد زیر را قرار دهید:

<?php
include (“config.php”);
?>

همان‌طور که احتمالا متوجه شده‌اید ما فایل config.php را با کد بالا در فایل index.php فراخوانی کرده‌ایم. حالا اگر آدرس http://127.0.0.1/cms/index.php را در مروگرتان اجرا کنید، باید با عبارت we Connected to db successfully! مواجه شوید. در غیر این‌صورت یکی از مراحل را اشتباه انجام داده‌اید، چراکه در این صورت اتصال به بانک داده انجام نشده است. اما اگر پیغام یاد شده را مشاهده می‌کنید یعنی با موفقیت به بانک داده cms متصل شده‌ایم. اگر همه چیز به درستی انجام شده بخش if فایل config.php را حذف کنید یا آن را به صورت کامنت درآورید.  همچنین یک دستور دیگر برای انتخاب بانک اطلاعاتی cms که آن را در مراحل قبلی ایجاد کردیم به این فایل اضافه می‌کنیم. در نهایت کد config.php شما باید شبیه به زیر باشد:

<?php
$dbhost = “localhost”;
$dbuser = “root”;
$dbname = “cms”;
$dbpass = “”;

$connect_db = mysql_connect ($dbhost, $dbuser, $dbpass);
mysql_select_db($dbname,$connect_db);
?>

با استفاده از تابع mysql_select_db می‌توانید به بانک اطلاعاتی موردنظر خود در سرور mysql متصل شوید. همان‌طور که می‌بینید این تابع دو آرگومان دارد که ورودی اول نام بانک اطلاعاتی که قصد متصل شدن به آن را داریم است و مورد دوم که تعریف آن اجباری هم نیست، به خروجی تابع متصل شدن به سرور MySQL اشاره دارد. در اینجا ما خروجی تابع را در متغیر connect_db قرار داده بودیم و از همین رو در آرگومان دوم تابع mysql_select_db نام این متغیر را وارد کرده‌ایم.

اما برای درک بهتر ادامه این آموزش باید با ساختار جدولی که ساخته‌ایم آشنا شوید. به شکل زیر دقت کنید:

۱۴۹d0301-ff36-4d47-a55c-acf3c0b1e76d

در نتیجه ما یک بانک اطلاعاتی به نام cms داریم. هر بانک اطلاعاتی می‌تواند شامل چند جدول باشد و هر جدول نیز شامل یکسری فیلد است.

در اینجا جدول ما posts نام دارد و هر سطر آن (هر رکورد) شامل سه فیلد id و title و text است. تعیین نام فیلد‌ها و نوع آن‌ها در هنگام ساخت جدول انجام می‌شود و در این مورد نام‌های انتخابی ما سه موردی بود که اشاره کردیم. همان‌طور که در تصویر بالا می‌بینید هر مطلب به صورت یک سطر جدید در جدول posts ذخیره خواهد شد و هر مطلب سه مشخصه id یا شناسه یکتای مطلب، title برای عنوان و text برای متن مطلب را شامل می‌شود. 

در جلسه بعد پروژه خود را ادامه خواهیم داد و رفته رفته آن را کامل‌تر می‌کنیم. پیشنهاد می‌کنیم برای درک بهتر آموزش‌های بعدی کمی در مورد بانک اطلاعاتی mysql و نیز دستورات sql در گوگل جستجو کنید و در میان مطالب بسیار زیاد فارسی منتشر شده در این مورد کمی تحقیق کنید تا با آمادگی بیشتری بتوانید ادامه آموزش‌ها را پیگیری کنید.

اگر هرگونه سوالی در مورد مباحث این جلسه برایتان پیش‌ آمده آن را در بخش نظرات اعلام کنید.

منبع: زومیت

آموزش PHP – جلسه پنجم: عبارات شرطی، دستور if

در سری مقالات آموزش پی‌اچ‌پی در وبلاگ مهرآستان تقریبا پایه‌ کار برای کدنویسی کاربردی‌تر را یاد گرفته‌اید. در این جلسه می‌خواهیم کدنویسی شرطی را به شما آموزش دهیم و یاد بگیریم که چگونه شرایط مختلف را در پروژه‌های خود کنترل کنیم. در ادامه مطلب با ما همراه باشید.

گاهی در برنامه‌نویسی شرایط پیش‌آمده را باید بتوانید پیش‌بینی و کنترل کنید. به عنوان مثال اگر کاربر هر نوع ورودی را وارد کرد، باید بدانید که چه عملیاتی بر روی ورودی انجام شود و تا نتیجه موردنظر به وی نمایش داده شود. این اصول ساده عبارت شرطی در پی‌اچ‌پی است! 

در تمامی کلاس‌هایی که طی دوران برنامه‌نویسی‌ برگزار کرده‌ام همیشه یک نکته مهم را یادآوری کرده‌ام؛ همیشه سعی کنید یک الگوریتم مناسب را پیش از شروع کدنویسی در مورد پروژه مدنظرتان آماده کنید. ما در اینجا نمی‌خواهیم وارد مبحث الگوریتم شویم اما طرح کلی پروژه همراه با پیش‌بینی‌ شرایط مختلفی که ممکن است رخ دهد را الگوریتم می‌گوییم. باز هم اشاره می‌کنیم که این تعریف صرفا به منظور فهم بهتر افراد تازه‌وارد به دنیای پی‌اچ‌پی است و بنابراین زیاد به جزئیات آن توجه نکنید. بهتر است کمی در مورد الگوریتمنویسی و اصول آن در گوگل جستجو کنید پیش از  هر پروژه، ترجیحا الگوریتم آن را آماده کنید.

دستور شرطی If

همانند تمامی زبان‌های برنامه‌نویسی، دستور شرطی if یکی از مهم‌ترین دستورهایی است که باید آن را یاد بگیرید. بعید به نظر می‌رسد در یک پروژه به دفعات از این دستور استفاده نکنید و همواره یکی از پراستفاده‌ترین و البته کاربردی‌ترین ابزارها برای کنترل شرایط مختلف در کدنویسی محسوب می‌شود. همانطور که در بالا اشاره کردیم، کنترل شرطی به کامپایلر پی‌اچ‌پی می‌گوید که اگر (if) شرایط خاصی رخ داد آنگاه کدام عملیات را باید انجام داد. پیش از اینکه به سراغ ادامه آموزش برویم بهتر است یادآوری کنیم که این آموزش ادامه و دنباله آموزش‌های قبلی است و برای درک این بخش باید سه جلسه قبلی را به‌خوبی فرا گرفته باشید.

برای استفاده از این دستور ابتدا if را نوشته و سپس در پرانتز مقابل آن شرط موردنظر را می‌نویسیم و در نهایت قطعه کدی که در صورت صحیح بودن شرط قرار است اجرا شود را بین علامت } و { می‌نویسیم. به قطعه کد مثال زیر دقت کنید: (برای استفاده و اجرای این مثال مانند قبل xampp را اجرا کنید و یک فایل php جدید را با نام دلخواه براساس آموزش‌های جلسات قبل ایجاد کنید. سپس کدهای زیر را در آن فایل نوشته و نتیجه را در مرورگر تست کنید.)

<?php
//usiing if
$var1 = “weblog”;
$var2 = “mehrastan”;

if ($var1 == “weblog”)
{
echo ‘you will go to weblog’;
}
?>

خب در کد بالا ابتدا دو متغیر را تعریف و مقداردهی کرده‌ایم. سپس دستور if را بکار گرفته‌ایم و در شرط آن با استفاده از عملگرهای کنترلی که در جلسه قبل به صورت کامل و مفصل آن‌ها را توضیح دادیم، شرط موردنظر را وارد می‌کنیم. در صورتیکه شرط داخل پرانتز برقرار باشد، کدی که بین } و { قرار گرفته اجرا خواهد شد و در غیر اینصورت هیچ کدی اجرا نمی‌شود. از آنجا که شرط کد بالا برقرار است و نتیجه آن true است، پس کد بین براکت‌ها اجرا خواهد شد و بنابراین عبارت you will go to weblog در مرورگر کاربر نمایش خواهد یافت.

اما بگذارید شرط را تغییر دهیم تا این بار برقرار نباشد و در نتیجه False را برگرداند. 

<!?php
//usiing if
$var1 = “weblog”;
$var2 = “mehrastan”;

if ($var2 == “weblog”)
{
echo ‘you will go to weblog’;
}
?>

از آنجا که مقدار متغیر var2 در کد بالا برابر با weblog نیست پس شرط داخل پرانتز نتیجه false را بر می‌گرداند و در نتیجه کدی که بین } و { قرار گرفته این بار اجرا نمی‌شود.

کنترل بیشتر شرط با else

مثال‌های بالا در واقع ساده‌ترین شکل استفاده از دستور شرطی if بودند. اما می‌توانیم این دستور را در حالت پیشرفته‌تری نیز بکار ببریم. مثلا بگوییم اگر شرط موردنظر برقرار بود یک کد و اگر شرط برقرار نبود کد دیگری اجرا شود. برای این منظور باید از else نیز در دستور if استفاده کنیم. به مثال زیر توجه کنید:

<?php
//using if … else

$var1 = “weblog”:
$var2 = “mehrastan”;

if ($var1 == “weblog”)
{
echo “you will go to weblog”;
}else{
echo “you will not go to weblog”:
}

همانطور که می‌بینید استفاده از else بسیار آسان است و کافی است آن را در دنباله دستور if بنویسیم و شرط موردنظر برای شرایطی که عبارت مقابل if برقرار نباشد را در این بخش وارد کنید. در کد بالا ابتدا توسط دستور if بررسی می‌کنیم که آیا مقدار متغیر var1 برابر با weblog است یا خیر.  اگر شرط برقرار بود عبارت you will go to weblog در مرورگر کاربر نمایش خواهد یافت و اگر شرط برقرار نبود، کدی که در بخش else قرار داده شده اجرا می‌شود که در اینجا عبارت you will not go to weblog است. 

حالا یک تمرین برایتان داریم! در کد بالا چون شرط برقرار است، مشخصا عبارتی که در مرورگر نمایان می‌شود you will go to weblog خواهد بود. شما کد را به نحوی تغییر دهید که شرط برقرار نباشد و عبارت you will not go to weblog در مرورگر نمایان شود.

روش کلی و استاندارد استفاده از if به همین سادگی بود که خدمتتان توضیح دادیم. اما می‌توان از if به صورت مختصرتر و کاربردی‌تری هم استفاده کرد که فعلا کاری با آن روش‌ها نداریم چراکه قصد ما ارائه روش آموزشی بسیار ساده و به دور از پیچیدگی است. در ادامه دروس و در مثال‌های کاربردی‌تر و عملی‌تر با این حالات مختلف هم آشنا خواهید شد.

گفتیم که در عبارات شرطی که در دستور if بکار می‌بریم همیشه دو حالت بیشتر پیش نمی‌آید: یا شرط برقرار است که در این حالت مقدار true را بر می‌گرداند یا شرط برقرار نیست که در این حالت مقدار false را بر می‌گرداند. در برخی مواقع در کدنویسی شرایطی پیش‌ می‌آید که نیاز دارید از این نکته با یک روش بسیار آسان بهره ببرید. ابتدا طبق معمول توجه شما را به مثال زیر جلب می‌کنیم و در ادامه آن را به طور دقیق مورد بررسی قرار می‌دهیم:

<?php
$x = true;
$y = false;

if ($x){
echo “we are ture!”;
}else{
echo “we are false!”;
}
?>

حتما تعجب کرده‌اید که چرا به جای نوشتن یک شرط در مقابل دستور if فقط نام متغیر x را آورده‌ایم. به‌نظر شما نتیجه اجرای کد بالا چه خواهد بود؟ اگر نکات گفته شده را به‌خوبی فرا گرفته باشید باید بدانید که نتیجه کد بالا چاپ عبارت we are ture! در مرورگر خواهد بود. اما چرا؟ گفتیم هدف از شرطی که در پرانتز نوشته می‌شود نهایتا به دست آمدن یک true یا false یا همان صحیح و غلط بودن است. از آنجا که مقدار متغیر x را true تعیین کرده‌ایم پس دستور if کاری به هیچ چیز ندارد جز خروجی که در این مثال خروجی متغیر x همان true است و در این حالت شرط برقرار بوده و در نتیجه we are true چاپ می‌شود. اما اگر به جای x در شرط دستور بالا y را قرار دهیم چه می‌شود؟ عبارت بخش else یعنی we are false! در مرورگر نمایان خواهد شد.

کنترل چند عبارت شرطی با else if

اما باز هم می‌توان دستور if را پیشرفته‌تر از این هم مورد استفاده قرار داد. فرض کنید در پروژه خود با شرایطی مواجه شده‌اید که باید چند حالت مختلف را بررسی کنید و در صورتی که هر کدام از شرایط موردنظر برقرار بود کد خاصی اجرا شود. در اینجا دو سناریو یا به اصطلاح برنامه‌نویس‌ها، دو سولوشن (solution) یا همان راه‌حل اصلی برای این منظور وجود دارد. اول این‌که برای هر شرایطی یک دستور if  جداگانه بنویسیم و دوم این‌که یک دستور if چند شرطه را مورداستفاده قرار دهیم. در پی‌اچ‌پی می‌توانید چندین شرط را به صورت همزمان با یک دستور if بررسی کنید. بدین منظور دقیقا مانند else باید از دستور else if استفاده کنید با این تفاوت که این بار در مکان else if هم می‌توانید مثل if اصلی شرط تعیین کنید. البته دستورات دیگری نیز برای بررسی چند شرط وجود دارند و اصولا در php برای هر مسئله‌ای تعداد زیادی روش وجود دارد. به کد زیر توجه کنید:

<?php
$site1 = “weblog”;
$site2 = “forum”;
$site3 = “mehrastan”;

if ($site1 == “weblog”)
{
echo “site is weblog”;
}else if ($site1 == “forum”)
{
echo “site is forum”;
}else if ($site1 == “mehrastan”)
{
echo “site is mehrastan”;
}else{
echo “site is not in list”;
}
?>

مثال بالا را به نوعی می‌توان حالت استاندارد استفاده از دستور کامل if دانست. در ابتدا سه متغیر معرفی و مقداردهی شده‌اند. سپس با دستور if شرط اول را بررسی می‌کنیم که اگر مقدار متغیر site1 برابر با weblog بود عبارت site is weblog چاپ شود. سپس شرط دیگری را با else if بررسی می‌کنیم و می‌گوییم اگر متغیر site1 برابر با forum بود عبارت site is forum چاپ شود. در نهایت شرط سومی را نیز مجددا با دستور else if بررسی کرده‌ایم که اگر site1 برابر با mehrastan بود، عبارت site is mehrastan چاپ شود. سپس در آخر با استفاده از دستور else به پی‌اچ‌پی اعلام می‌کنیم که در صورت برقرار نبودن هیچ‌کدام از این شرط‌ها عبارت site is not in list در مرورگر چاپ خواهد شد.

استفاده از if به صورت تو در تو

دستور if را می‌توانید به صورت تو در تو نیز استفاده کنید. با بزرگ‌تر شدن پروژه‌ها رفته رفته نیاز به استفاده از if به صورت تو در تو خواهید داشت. همچنین برای ساده سازی برخی کارها می‌توان به صورت زیرکانه از if های تو در تو بهره گرفت. البته چون فعلا نیازی به استفاده از چنین حالتی نداریم و نیز نمی‌خواهیم مبحث را سنگین‌تر کنیم برای این حالت در حال حاضر یک مثال ساده می‌آوریم و در بخش‌های پیشرفته‌تر و انجام کدنویسی برای تمرینات عملی، بیشتر با این حالات و تکنیک‌ها آشنا خواهید شد.

<?php
$fname = “mojtana”;
$lname = “bolhasani”;

if ($fname == “mojtaba”){
if ($lname == “bolhasani”)
{
echo ” your full name is mojtaba bolhasani”:
}
}else{
echo “your are not in list”;
}

سعی کنید کد بالا را ابتدا خودتان تحلیل کنید. در ابتدا دو متغیر تعریف و مقداردهی شده‌اند. سپس در شرط اول بررسی می‌کنیم که آیا متغیر fname برابر با mojtaba است یا خیر. در صورتی که شرط برقرار نباشد کد بخش else اجرا خواهد شد و در صورتی که درست باشد پی‌اچ‌پی به سراغ if دوم می‌رود و سپس در این if جدید بررسی می‌کنیم که آیا متغیر lname برابر با bolhasani است یا نه. اگر این شرط هم برقرار باشد در نهایت عبارت your full name is mojtaba bolhasani در مرورگر نمایان خواهد شد.

این حالت ساده استفاده از if تو در تو بود ولی همان‌طور که اشاره کردیم پی‌اچ‌پی آنقدر دست توسعه‌دهنده را باز می‌گذارد که برای انجام هر کاری می‌توان از روش‌ها و سولوشن‌های ابتکاری و پیش‌فرض زیادی بهره برد.

بررسی چند شرط به صورت همزمان

گاهی نیاز است تا چند شرط به صورت همزمان با هم برقرار باشند تا به کد اجازه دهیم عملیات خاصی را انجام دهد. بیایید ثابت کنیم پی‌اچ‌پی چرا انقدر محبوب است! خب مثال بخش قبلی را به خاطر بیاورید که دو شرط را به صورت تو در تو بررسی کردیم. می‌توان کد بالا را به این صورت هم نوشت:

<?php
$fname = “mojtana”;
$lname = “bolhasani”;

if ($fname == “mojtaba” && $lname == “bolhasani”)
{
echo ” your full name is mojtaba bolhasani”:
}else{
echo “your are not in list”;
}
?>

اگرچه کد بالا نسبت به مثال قبلی بسیار خلاصه‌تر و خواناتر است اما نتیجه کار یکی است! یکی از دلایل لذت‌بخش بودن برنامه‌نویسی با پی‌اچ‌پی همین موارد است! در جلسه قبلی با عبارات کنترلی آشنا شدید و حالا در این مثال از آن‌ها کمی استفاده کردیم. در دستور if می‌توانید هر چقدر که دلتان می‌خواهد شرایط مختلف را به صورت همزمان با هم بررسی کنید. در کد بالا دو شرط به صورت همزمان بررسی می‌شوند و در صورتی که هر دو درست باشند، عبارت your full name is mojtaba bolhasani چاپ خواهد شد و در غیر این صورت هم که دیگر خودتان می‌دانید!  البته چون در بین دو شرط نوشته شده عبارت && را قرار داده‌ایم وضعیت به این صورت پیش‌ می‌رود چراکه && در صورتی true را بر می‌گرداند که هر دو طرف آن با هم برابر باشند. زیاد نگران این بخش هم نباشید و فقط سعی کنید آن را برای خود تحلیل کنید.

دیدید که با استفاده از دستور if می‌توان شرایط مختلف و وضعیت‌های گوناگون را در برنامه‌نویسی با php پیش‌بینی و کنترل کرد. برای فراگرفتن هرچه بهتر این مبحث سعی کنید برای خود چند مثال ایجاد کنید. چند شرط را در نظر بگیرید و برای آن کد بزنید! سعی کنید از آرایه‌ها نیز استفاده کنید. همچنین چند شرط را در دستور if بکار بگیرید تا بخوبی این مبحث را هم درک کنید.

اگر سوالی در مورد هر یک از مباحث مطرح شده داشتید، آن را در بخش دیدگاه‌ها بپرسید. ما و سایر کاربران در حد توان پاسخ شما را خواهیم داد.

منبع: زومیت

آموزش PHP – جلسه سوم: عملگرها

در ادامه سری آموزش‌های پی‌اچ‌پی در زومیت و پس از معرفی ابزارهای موردنیاز و شروع کار با این زبان برنامه‌نویسی، و پس از مبحث متغیرها و کامنت‌ها، حال به سراغ جلسه سوم می‌رویم. در این جلسه قصد داریم در مورد عملگرها در PHP صحبت کنیم پس در ادامه آموزش با ما همراه باشید.

عملگرهای اصلی

ابتدا باید ببینیم عملگر چیست؟ عملگرها در واقع عملیاتی را بر روی داده‌ها انجام می‌دهند و از آنجا یک خروجی می‌گیریم. برای مثال در خط زیر عملگر جمع به‌کار رفته است و باعث شده تا دو عدد با یکدیگر جمع شوند:

۲ + ۲ = ۴

همان‌طور که دیدید عملگرهای اصلی در واقع همان عملیات‌ اصلی در ریاضیات هستند که در دوران ابتدایی با آن‌ها آشنا شدیم! عملگرهای اصلی در پی‌اچ‌پی از این قرار هستند:‌

عملگر جمع (+)، عملگر تفریق (-)، عملگر ضرب (*)، عملگر باقی‌مانده (٪) و عملگر تقسیم (/).

بهترین راه برای ثبت آموخته‌ها استفاده از مثال عملی است پس در ادامه برای این عملگرها به زبان پی‌اچ‌پی مثالی می‌آوریم. دقت کنید توضیحات هر خط از کد زیر به صورت کامنت مشخص شده است:

همان‌طور که دیدید ۴ عملگر اصلی به همین راحتی در پی‌اچ‌پی مورداستفاده قرار می‌گیرند. اما اگر حواس‌تان باشد، یک عملگر اصلی دیگر به نام باقی‌مانده هم در php وجود دارد. پیش از مثال لازم دانستیم در مورد این عملگر کمی بیشتر توضیح دهیم. از باقی‌مانده به منظور گرفتن خروجی باقی‌مانده تقسیم داده‌ها بر یکدیگر استفاده می‌شود. برای مثال در کد زیر، باقی‌مانده تقسیم دو عدد ۸ و ۳ به عنوان خروجی چاپ خواهد شد که این مقدار ۲ است.

<?php

//module

$num1 = 8;

$num2 = 3;

echo $num1 % $num2; //this will print 2

?>

عملگرهای افزایش و کاهشی

دو نوع عملگر دیگر نیز در PHP وجود دارند که از آن‌ها برای افزایش یا کاهش مقدار یک متغیر استفاده می‌شود. به مثال زیر توجه کنید:

<?php
$x++; //this code is same to this: $x = $x + 1;
$x–; //this code is same to this: $x = $x – 1;
?>

همان‌طور که احتمالا متوجه شده‌اید عملگر ++ باعث می‌شود یک واحد به مقدار قبلی متغیر x در کد بالا اضافه شود. در واقع ++x$ همان کار ۱ + x$ را انجام می‌دهد ولی طبیعتا روشی حرفه‌ای‌تر و سریع‌تر است. همین قضیه در مورد عملگر — نیز صدق می‌کند با این تفاوت که این‌بار یک واحد از مقدار متغیر x کم می‌شود.

اما گاهی در برنامه‌نویسی شرایطی پیش‌ می‌آید که نمی‌توان از عملگرهای افزایش و کاهشی به همین شکل استفاده کرد! فرض کنید می‌خواهید مقدار یک متغیر را ابتدا چاپ کنید یا از آن خروجی بگیرید و سپس آن را یک واحد افزایش دهید. در این شرایط کد بالا نمی‌تواند به شما کمک کند چرا که به حالت معمول نوشتن کدی مانند ++x$ باعث می‌شود ابتدا یک واحد به متغیر اضافه و سپس هرچه نتیجه باشد به عنوان خروجی مدنظر قرار می‌گیرد.

اگر می‌خواهید ابتدا به مقدار کنونی متغیر دسترسی یافته و سپس عملیات افزایش یا کاهش را انجام دهید باید از کدی مانند زیر استفاده کنید و عملگرهای مورد بحث را پیش از نام متغیر به‌کار بگیرید:

<?php
$x = 1;
echo ++$x; // first echo current value of $x and then increase 1 unit. so this will print 1;
echo “<br>”;
echo $x; // this will print 2 again! bcz $x now is $x + 1<span id=”CmCaReT”></span>
?>

توضیحات کد بالا به صورت کامنت در خود کد داده شده و از شما می‌خواهیم سعی کنید خودتان به‌خوبی آن را تحلیل کنید. در کد بالا عدد ۲ در خروجی دوبار چاپ خواهد شد. دقت کنید که ما از کد <br> که یک تگ اچ‌تی‌ام‌ال است نیز استفاده کرده‌ایم.

عملگرهای اختصاص دادن

از این نوع عملگر برای اختصاص دادن مقدار به متغیرها استفاده می‌کنیم. پیشتر با عملگر اصلی = آشنا شده‌اید و تاکنون در مثال‌ها از آن استفاده کرده‌ایم. کار این عملگر بسیار ساده است. هر چه در سمت راست وجود دارد به متغیر سمت چپ اختصاص داده خواهد شد. علاوه بر عملگر اصلی اختصاص دادن چند عملگر کاربردی دیگر نیز در پی‌اچ‌پی وجود دارند که کارکرد آن‌ها مشابه عملگرهای افزایش و کاهشی است. به مثال زیر توجه کنید:

<?php
$x = 50;
$x += 100; // this is same as this code : $x = $x + 100
echo $x; // this will print 150
?>

در کد بالا ابتدا مقدار ۵۰ را به متغیر x اختصاص دادیم. سپس با استفاده از عملگر اختصاص دادن =+ مقدار ۱۰۰ را به متغیر یاد شده اضافه و نتیجه را مجددا در خود متغیر ذخیره کردیم. در نهایت با دستور echo مقدار نهایی x$ را در مرورگر نمایش دادیم. عملگرهای اختصاص دادن به شرح زیر هستند:

عملگرهای اختصاص دادن در پیاچپی

عملگر کارکرد توضیح
$x += $y $x = $x + $y افزایشی
$x -= $y $x = $x – $y کاهشی
$x *= $y $x = $x * $y ضرب
$x /= $y $x = $x / $y تقسیم
$x %= $y $x = $x % $y باقی‌مانده

همان‌طور که می‌بینید می‌توان با استفاده از این عملگرها سرعت کدنویسی را بالا برد و علاوه بر این کد کمتری نوشت.

عملگرهای مقایسه‌ای

از این نوع عملگرها برای مقایسه دو داده استفاده می‌شود. این عملگرها خروجی دوحالته دارند بدین معنا که پس از انجام مقایسه یا مقدار صحیح (true) یا مقدار غلط (false) را باز می‌گردانند. در جدول زیر می‌توانید این عملگرها و کاربرد آن‌ها را ببینید:

عملگر نام مثال نتیجه
== برابری $x == $y اگر مقدار x و y برابر باشد true را برمی‌گرداند
=== یکسان $x == $y اگر مقدار x و y برابر و نوع آن‌ها نیز یکی باشد true را برمی‌گرداند
=! عدم برابری $x != $y اگر مقدار x و y برابر نباشد true را برمی‌گرداند
<> عدم برابری $x <> $y اگر مقدار x و y برابر نباشد true را برمی‌گرداند
==! عدم یکسان بودن $x !== $y اگر مقدار x و y برابر نباشد و نوع آن‌ها نیز یکی نباشد true را برمی‌گرداند

همان‌طور که می‌بینید می‌توان از انواع حالت مقایسه‌ای پیشرفته در پی‌اچ‌پی استفاده کرد. البته نیازی نیست که چندان نگران این بخش باشید و در کدها و پروژه‌های عملی که در جلسات آینده انجام می‌دهیم از تمامی این موارد استفاده خواهیم کرد تا علاوه بر یادگیری یک کار عملی هم انجام داده باشید.

اما پیشنهاد می‌کنیم با نوشتن چند خط کد نمونه خودتان را بیازمایید و مثال‌هایی برای استفاده از این عملگرها با توجه به آنچه تا کنون آموخته‌اید را نوشته و در Xampp سرور رایانه شخصی خود تست کنید. 

در صورتی که هرگونه سوالی در مورد مباحث بیان شده دارید می‌توانید در بخش دیدگاه‌ها اعلام کنید. جلسه بعدی آموزش پی‌اچ‌پی به مبحث آرایه‌ها اختصاص دارد.

منبع: زومیت

آموزش PHP – جلسه دوم، متغییرها و توضیحات در کدها

در جلسه اول آموزش برنامهنویسی و طراحی وب به زبان PHP رایانه خود را به سرور محلی تبدیل کردیم و نیز ابزارهای موردنیاز برای شروع برنامهنویسی به این زبان را نصب کرده و در نهایت هم شاهد اجرای موفق اولین پروژه خود بودیم. در این جلسه می‌خواهیم در مورد متغیرها و نیز عملگرها در php صحبت کنیم. در ادامه با ما همراه باشید.

همانطور که در جلسه قبل توضیح دادیم ابتدا Xampp را باز کرده و سرور Apache و MySQL را آنگونه که توضیح دادیم اجرا کنید. سپس در پوشه htdocs یک پوشه جدید به نام section2 ایجاد کنید. حال ++NotePad را باز کنید. همانند جلسه اول، از منوی Language زبان php را انتخاب کنید. و بدون اینکه چیزی در این فایل بنویسید، آن را با نام vars.php در پوشه section2 دخیره کنید. بدین طریق می‌توانید از طریق آدرس http://127.0.0.1/section2/vars.php به این فایل دسترسی داشته باشید.

دستور چاپ و خروجی در php

برای چاپ متون و سایر موارد در پی‌اچ‌پی می‌توان از دستورات مختلفی که به این منظور ایجاد شده‌اند استفاده کرد. رایج‌ترین دستور برای چاپ خروجی در php همانند کدی که جلسه اول نوشتیم، دستور echo است. روش استفاده از این دستور بدین صورت است که ابتدا آن را نوشته و سپس آنچه قصد داریم به عنوان خروجی در مرورگر کاربر نمایش یابد را مقابل آن می‌نویسیم. اگر بخواهیم به صورت مستقیم با این دستور خروجی داشته باشیم باید آن را بین دابل‌کوتیشن یا تک‌کوتیشن قرار دهید و در آخر نیز علامت نقطه‌ویرگول را قرار دهید که به معنای پایان آن خط و دستور در پی‌اچ‌پی است. در ادامه چند دستور چاپ و خروجی را با یکدیگر تمرین می‌کنیم.

++NotePad را باز کنید و کد زیر را در آن وارد کنید:

<?php

echo “salam. in jalase dovome amoozeshe php dar zoomit ast.”;

?>

به‌نظر شما خروجی کد بالا چیست؟ همانطور که احتمالا حدس زده‌اید آنچه بین دابل کوتیشن قرار دارد به عنوان خروجی در مرورگر کاربر نمایش خواهد یافت. (یعنی عبارت salam. in jalase dovome amoozeshe php dar zoomit ast.) علاوه بر متن می‌توان کدهای اچ‌تی‌ام‌ال را نیز توسط دستور  echo در مرورگر به کاربر نشان داد. کد بالا را به صورت زیر تغییر دهید:

<?php

echo “salam. in jalase dovome amoozeshe php dar zoomit ast.<br>in khate dovom ast<b>matne zakhim</b><i>matine kaj</i>”;

?>

خروجی کد بالا به صورت زیر خواهد بود:

ef8a71be-473a-4c7e-874b-24d991df4ca5همانطور که در عکس بالا می‌بینید هر آنچه در مقابل عبارت echo قرار داده شود حتی کدهای اچ‌تی‌ام‌ال به‌خوبی اجرا می‌شوند. دقت کنید در صورتی که کدهای html در این دستور بین تک‌کوتیشین قرار گیرند به صورت کد html پردازش نشده و به همان شکل در مرورگر نمایش می‌یابند. پس برای این‌که کدهای اچ‌تی‌ام‌ال به‌درستی اجرا شوند باید مطمئن شوید آن‌ها را در بین دابل‌‌کوتیشین قرار داده‌اید.

نوشتن توضیحات در کدهای php

در تمامی زبان‌های برنامه‌نویسی، توسعه‌دهندگان توضیحاتی را با توجه به قواعد آن زبان، در کدهای خود درج می‌کنند تا در مراجعات بعدی راحت‌تر بتوانند از کدهای خود سر در بیاورند و نیز توسعه‌دهندگان دیگر بتوانند راحت‌تر کدها را درک کنند. دقت کنید که توضیحات فقط برای توسعه‌دهنده و برنامه‌نویس قابل دیدن بوده و به هیچ‌وجه در خروجی قرار نگرفته و کاربران آن‌ها را نمی‌بینند. برای نوشتن توضیحات در php می‌توان به چند روش عمل کرد. ++NotePad را گشوده و یک فایل جدید php را مانند قبل بسازید و آن را با نام comment.php در پوشه section2 ذخیره کنید. در این فایل کدهای زیر را وارد کنید:

<?php

// in yek tozih yek khati ast va dar moroorgar namayesh nemiyabad

# in ham tozihe yek khati digari ast

/* in yek tozi chand khati ast

khate dovome tozih */

?>

همان‌طور که می‌بینید می‌توانید به چند طریق توضیحات تک‌خطی و چندخطی را در پی‌اچ‌پی به‌کار ببرید.

متغیرها در php

در ابتدا مفهوم متغیر را برای شما توضیح می‌دهیم. فرض کنید شما یک کاسه خالی دارید. خب در این حالت می‌توانید هر چه دوست دارید را در این کاسه قرار دهید. مثلا یک بار آب، یک بار چند میوه و … در اینجا کاسه شما حکم متغیر را دارد که هر لحظه می‌تواند چیزی را در خود داشته باشد.

متغیرها در زبان‌های برنامه‌‌نویسی مختلف وجود دارند و از مهم‌ترین بخش‌های یک پروژه به حساب می‌آیند. در تمامی پروژها قطعا به استفاده از متغیرها نیاز خواهید داشت پس باید این مبحث ساده را به‌خوبی فرا بگیرید. پی‌اچ‌پی برخلاف سایر زبان‌های برنامه‌نویسی برای هر نوع داده، متغیر جداگانه ندارد و این موضوع یکی از نکات و جوانب بسیار مثبت php است. شما یک متغیر را تعریف کرده و هر نوع داده‌ای که می‌خواهید را در قرار می‌دهید.

اما تعریف و استفاده از متغیرها قواعد خاصی هم دارد. برای معرفی کردن متغیرها باید ابتدا علامت $ را نوشته و پس از آن نام متغیر موردنظر را بنویسید. دقت کنید در نام‌گذاری متغیرها حروف بزرگ و کوچک با یکدیگر فرق دارند. برای مثال متغیری با نام var$ با متغیری با نام Var$ تفاوت دارد و پی‌اچ‌پی در واقع آن‌ها را دو متغیر جدا از هم می‌داند.

بهترین روش یادگیری استفاده از مثال عملی است. در فایلی که به نام vars.php ایجاد کردید، کدهای زیر را عینا تایپ کنید:

<?php

// متغیر رشته ای

$var1 = “Mehrastan”;

// متغیر عدد صحیح

$var2 = 123;

// متغیر اعشاری

$var3 = 1.2222;

// متغیر صحیح یا غلط

$var4 = true;

?>

همانطور که در بالا می‌بینید می‌توان هر نوع داده‌ای را در متغیری که در پی‌اچ‌پی تعریف کرده‌اید قرار دهید. برای نسبت دادن مقدار به متغیرها باید پس از معرفی، علامت = را قرار داده و سپس مقدار موردنظر را تایپ کنید. اگر پیش‌تر با زبان‌های دیگر برنامهنویسی کرده باشید می‌دانید که چند نوع متغیر اصلی وجود دارد:

  • متغیرهای رشته‌ای
  • متغیرهای اعداد صحیح
  • متغیرهای اعداد شناور
  • متغیرهای دوحالته که یک مقدار صحیح یا غلط را نگه می‌دارند

این ۴ نوع متغیر اصلی در اکثر زبان‌های برنامهنویسی هستند. شما هر نوع داده‌ای که به متغیر موردنظرتان نسبت دهید، آن متغیر خودبه‌خود از نوع داده شما خواهد بود. برای مثال در کد بالا متغیر اول از نوع رشته‌ای است چراکه داده نسبت داده شده به آن یک رشته متنی است.

نکته مهم در مورد رشته‌ها این است که در پی‌اچ‌پی باید این نوع داده را بین دابل‌کوتیشین یا تک‌کوتیشن قرار دهید. البته تفاوت‌هایی بین این دو نیز وجود دارد که به‌زودی به این موضوع نیز می‌پردازیم. پس تا اینجای کار یاد گرفتیم که چگونه مقادیر مختلف را بنا به نیاز در متغیرها قرار دهیم.

چاپ متغیرها

حال که آموختیم چگونه می‌توان موارد مختلف را در مرورگر به عنوان خروجی چاپ کرد، بهتر است به سراغ چاپ متغیرها برویم. برای چاپ متغیرها و نشان دادن داده‌ای که هر متغیر در خود دارد می‌توانید از دستور echo استفاده کنید. فایل vars.php را باز کرده و تمام کدهای نوشته شده در آن را پاک کرده و کد زیر را در آن تایپ و سپس ذخیره کنید.

<?php

// این یک توضیح است. خط زیر یک متغیر رشته ای است

$var = “ebarate mojud dar motaqayere aval”;

// خط زیر یک متغیر عددی است

$newVar = 123;

// خط زیر یک متغیر از نوع صحیح یا غلط است

$anotherVar = true;

echo $var;

// خط زیر کد اچ تی ام الی است که باعث رفتن به خط جدید در مرورگر می شود

echo “<br>”;

// کد زیر مقدار متغیر را در مرورگر نمایش می‌دهد

echo $newVar;

echo “<br>”;

echo $anotherVar;

?>

سپس مرورگرتان را باز کرده و به آدرس http://127.0.0.1/section2/vars.php بروید. خروجی شما باید مانند تصویر زیر باشد:

e186331b-c49b-4e65-a0a5-0ac5bfa5110dهمان‌طور که می‌بینید هرچه آنچه که متغیرها در خود نگه داشته‌اند را توسط دستور echo در مرورگر چاپ کردیم. همچنین توضیحات را در کد بالا به کار بردیم ولی این توضیحات برای خودمان هستند و نه تاثیری در خروجی کد داشته و نه برای کاربر قابل مشاهده‌اند. دقت کنید که می‌توان متغیرها را به همراه متون ثابت نیز به‌کار برد. در این شرایط باید حتما از دابل‌کوتیشین استفاده کنید یعنی متغیرها را در داخل دابل‌کوتیشن به‌کار ببرید. در صورتی‌که از تک‌کوتیشین استفاده کنید، همان‌طور که گفتیم به جای مقدار متغیر، نام خود متغیر در خروجی نمایش خواهد یافت. فایل vars.php را گشوده و آن را به صورت زیر اصلاح کنید:

<?php

// این یک توضیح است. خط زیر یک متغیر رشته ای است

$var = “ebarate mojud dar motaqayere aval”;

// خط زیر یک متغیر عددی است

$newVar = 123;

// خط زیر یک متغیر از نوع صحیح یا غلط است

$anotherVar = true;

// کد زیر باعث چاپ متن و متغیر در کنار یکدیگر در مروگر خواهد شد

echo “meqdare motaqayere aval in ast: $var”;

echo “<br>”;

echo “meqdate motaqayere dovom : $newVar va meqdare motaqayere sevom niz : $anotherVar ast”;

?>

خروجی کد بالا به صورت زیر خواهد بود:

۹۰d90e13-9c06-4313-8f28-cdc14dedc686همان‌طور که در تصویر بالا می‌بینید به جای نام هر متغیر، مقدار آن در مرورگر نمایش یافته است. بدین طریق یاد گرفتیم که چگونه متغیری را تعریف کرده و سپس در هرجا که نیاز داریم به مقدار آن دسترسی داشته باشیم. در جلسه بعد اعمال مختلف بر روی متغیرها را با یکدیگر خواهیم آموخت و نیز با عملگرهای php آشنا خواهیم شد.

منبع: زومیت

آموزش PHP – جلسه اول معرفی و ابزارهای مورد نیاز

طراحی و برنامهنویسی وب، امروزه در همه جای دنیا بسیار مورد توجه است. برای تولید صفحات وب می‌توان از زبان‌های مختلفی چون ASP.Net، پی‌اچ‌پی و … بهره گرفت. PHP به دلیل متن باز بودن و قدرت بسیار بالایی که دارد در بین توسعهدهندگان وب جایگاه بسیار خوبی دارد و تعداد زیادی از این توسعهدهندگان از php در پروژه‌های خود بهره می‌برند. در ادامه مطلب و جلسه اول آموزش PHP با ما همراه شوید.

ما در این سری آموزشی قصد داریم زبان برنامه‌نویسی پی‌اچ‌پی را از ابتدا به شما عزیزان آموزش دهیم. اما پیش‌نیاز این آموزش، آشنایی با HTML و CSS است.

معرفی مختصر PHP

آقای راسموس لردورف برای اولین بار در سال ۱۹۹۴ برای مدیریت صفحه وب شخصی خود زبان برنامهنویسی php را ایجاد کرد. او این زبان برنامهنویسی را به منظور ایجاد محتوای داینامیک از جمله نمایش تعداد آمار بازدید وب‌سایتش نوشت. همچنین بد نیست بدانید PHP در واقع سرنام عبارت Personal Home Page Tools به معنای ابزار صفحه شخصی خانگی است. اگر می‌خواهید تاریخچه کامل این زبان برنامه‌نویسی را مطالعه کنید می‌توانید به این لینک مراجعه کنید.

پیش‌ از توسعه زبان‌هایی مانند php اکثر صفحات وب در آن زمان به صورت ایستا بودند و برای اعمال تغییرات در این صفحات نیاز به ویرایش دستی تک تک آن‌ها بود که این امری بسیار طاقت‌فرسا و سخت به حساب می‌آمد. از این‌رو  php همان‌طور که اشاره کردیم به منظور ایجاد وب‌سایت‌هایی پویاتر که قابلیت تعامل بیشتری با کاربر را دارند، توسعه یافت.

شروع کار و ابزارهای مورد نیاز

از آنجا که پی‌اچ‌پی یک زبان سمت سرور است پس قبل از هر چیز باید رایانه شخصی‌تان را به یک سرور محلی تبدیل کنید تا بتوانید اسکریپت‌های نوشته شده به این زبان را در رایانه خود اجرا و تست کنید. برای انجام این کار نیاز به طی کردن فرآیند  سخت و پیچیده‌ای نخواهید داشت. نرم‌افزارهای مختلفی برای ایجاد یک سرور محلی بر روی رایانه وجود دارند و ما می‌خواهیم از Xampp استفاده کنیم. مراحل زیر را به ترتیب و با دقت انجام دهید:

ابتدا به وب‌سایت رسمی زمپ رفته و با توجه به نوع سیستم‌عامل‌تان، جدیدترین نسخه را دانلود کنید. در زمان نوشتن این مطلب جدیدترین نسخه ۵/۶/۱۹ است.

۸۵۷۴۲۱۴۸-۱۳df-42dc-a07b-ed664007bcbbپس از دانلود Xampp آن را نصب کنید. مراحل نصب را همانند سایر نرم‌افزارهای معمول انجام دهید و هیچ بخشی از آن را تغییر ندهید و اجازه دهید نرم‌افزار با تنظیمات پیش‌فرض بر روی سیستم شما نصب شود.

سپس نرم‌افزار را اجرا کنید و مطابق شکل زیر سرور Apache و MySQL را در حالت اجرا قرار دهید. برای این کار بر روی دکمه Start جلوی این گزینه‌ها کلیک کنید.

۶۴d9c1d3-3c5e-4cbe-9a87-ede5d36aa9ecبه همین راحتی شما رایانه خود را به یک سرور محلی تبدیل کردید که می‌تواند اسکریپت‌های نوشته شده به زبان php را به‌راحتی اجرا کند. علاوه بر این امکان استفاده از بانک اطلاعاتی MySql نیز با Xampp برای شما فراهم است که البته فعلا به این بخش کاری نداریم.

حالا مرورگر خود را باز کرده و آدرس زیر را تایپ کنید:

http://127.0.0.1/

اگر همه چیز را درست انجام داده باشید صفحه مرورگر شما به شکل زیر خواهد بود.

۳ebbd91f-d435-4140-a3de-920e2962466eایجاد اولین پروژه

تا اینجا شما دستگاه‌ خود را برای کار با پی‌اچ‌پی آماده کرده‌اید ولی نیاز به یک ویرایشگر متنی خوب نیز دارید. توسعه‌دهندگان همیشه بنا به سلیقه خود از نرم‌افزارهای ویرایشگر متن مخصوص کدنویسی یکی را انتخاب می‌کنند. برای شروع حتی می‌توان از نوت پد ویندوز بهره گرفت اما پیشنهاد ما استفاده از جدیدترین نسخه نرم‌‌افزار ++NotePad است. برای نصب این ویرایشگر نیز ابتدا به وب‌سایت رسمی نوت‌پد++ رفته و جدیدترین نسخه را دانلود و در سیستم خود نصب کنید.

پس از نصب ++NotePad آن را باز کنید و از منوی Language مطابق شکل زیر PHP را انتخاب کنید تا نرمافزار برای نوشتن کدهای پی‌اچ‌پی آماده شود.

۰۴eb5f29-b920-40c0-94ae-30283ce7ca4eمستقیما و بلافاصله می‌خواهیم به سراغ‌ آموزش برویم. اولین نکته مهم این است که باید بدانید فایل‌های نوشته شده به این زبان را چگونه و در کجا باید ذخیره کنید.

تمامی فایل‌های نوشته شده به زبان پی‌اچ‌پی باید در مسیر زیر ذخیره شوند. دقت کنید آدرس روت یا همان ریشه سرور محلی شما که با آدرس http://127.0.0.1 در دسترس است، فایل‌های موجود در مسیر C:/xampp/htdocs را اجرا می‌کند. بنابراین ریشه سرور شما در رایانه‌تان پوشه htdocs است که خود این پوشه در زیر پوشه‌ی Xampp قرار دارد.

دقت کنید اگر هنگام نصب Xampp مسیر نصب آن را تغییر داده باشید باید به جای C نام درایو مورد نظر را وارد کنید. پس تا اینجا متوجه شدید که پوشه روت سرور محلی شما در رایانه‌تان کجا قرار دارد. دقت کنید سایر پوشه‌هایی که زیرشاخه Xampp هستند را به هیچ وجه دستکاری نکنید تا در عملکرد این نرم‌افزار اشکال پیش نیاید.

بهتر است برای هر پروژه یک پوشه جداگانه در پوشه htdocs ایجاد کنید. بدین صورت دسترسی به پروژه‌ها و فایل‌های شما در مراجعات بعدی بسیار آسان‌تر خواهد بود. برای ایجاد اولین پروژه به مسیر C:/xampp/htdocs رفته و مانند تصویر زیر یک پوشه به نام hello ایجاد کنید. یعنی پوشه hello زیر شاخه پوشه htdocs است.

۳۲۰۳ee92-3a43-40d4-94e3-afd55aa1b4a5حالا نوت‌پد++ را باز کرده و عبارت زیر را در آن وارد کنید و سپس فایل را با نام test.php و در مسیر C:/Xampp/htdocs/hello که در مرحله قبل آن را ساختید ذخیره کنید.

<?php echo “Hello PHP tutorials From Zoomit!”; ?>

بدین ترتیب فایل شما با آدرس: http://127.0.0.1/hello/test.php از طریق مرورگر قابل اجرا خواهد بود. پس مرورگرتان را باز کرده و آدرس یاد شده را در آن وارد کنید. تصویر زیر خروجی کد نوشته شده به زبان پی‌اچ‌پی است و در واقع اولین اسکریپت نوشته شده شما به این زبان است.

دقت کنید در پایان هر دستور پی‌اچ‌پی باید علامت « ; » را قرار دهید. این علامت در پایان هر دستور نشان از پایان آن خط دارد و بسیار مهم است که آن را در آخر تمامی دستورات خود قرار دهید.

۵a24e33e-e517-4d17-8a64-491d0208c5e3اگر تصویر مروگر شما هم چیزی شبیه به عکس بالا را نشان می‌دهد به شما تبریک می‌گوییم چراکه توانسته‌اید اولین پروژه پی‌اچ‌پی خود را به درستی ایجاد و اجرا کنید.

قواعد کلی برنامه‌نویسی به زبان پی‌اچ‌پی

مهمترین نکته این است که فایل‌های نوشته شده به زبان پی‌اچ‌پی باید با پسوند php. ذخیره شوند. اگر به اولین کد نوشته شده به زبان php خود نگاهی بیاندازید متوجه می‌شوید که کدهای این زبان با برچسب php؟> شروع شده و با <? پایان می‌یابد. هر چه بین این دو برچسب یا همان تگ، قرار بگیرد، سرور آن‌ کدها را به عنوان کد php در نظر گرفته و پردازش می‌کند. اما شاید بپرسید موارد خارج از این دو برچسب چگونه اجرا خواهند شد؟ خب در پاسخ باید گفت هرچه که خارج از برچسب مخصوص پی‌اچ‌پی نوشته شده باشد، عینا در مرورگر دیده خواهد شد که می‌تواند متون ساده، کد اچ‌تی‌ام‌ال یا CSS هم باشد.

پس نتیجه می‌گیریم دو قاعده بسیار مهم در برنامه‌نویسی php اول، ذخیره فایل‌ها با پسوند php. و دوم قرار دادن کدهای این زبان در برچسب مخصوص آن است که با php?> شروع شده و با <? خاتمه می‌یابد.

تا اینجای کار شما گام اول را به‌طور کامل برای شروع برنامهنویسی پی‌اچ‌پی و ساخت صفحات وب با این زبان برداشته‌اید. در جلسات آینده با ما همراه باشید تا رسما شما را وارد دنیای برنامه‌نویسی PHP کرده و با یکدیگر رفته رفته بر این زبان تسلط بیابیم.

این سری آموزشی از ابتدا و از پایه شروع شده و با ساخت چند پروژه عملی به عنوان تمرین پایان خواهد یافت.

منبع: زومیت