خوب دوستان بعد از یه استراحت دوباره کار رو شروع میکنیم لطفا به این مثال دقت کنید.
کد PHP:
$a = 10;
$b = "10";
$a == $b;
تودستور سوم ،ارزش true برگردانده میشه . چرا؟؟؟
چون اول متغیر b$ از نوع رشته ای به نوع عددی تبدیل میشه و بعد مقایسه انجام می شه.
اگر بخواهیم تبدیل نوع صورت نگیرد و مقایسه با انواع یکسان انجام بشه باید از عملگر === استفاده بشه
کد PHP:
$a = 10;
$b = "10";
$a === $b;
دستور سوم مقدار false رو برمیگردونه . چون دو متغیر a$ و b$ همنوع نیستند.
توجه کنید که دو عملگر هستند که نامساوی را نشخص میکنن.این عملگرها <> و =! هستند .
---------- Post added at 02:47 PM ---------- Previous post was at 02:05 PM ----------
عملگرهای منطقی
عملگرهای منطقی روی عبارات منطقی عمل میکنن. به عنوان مثال اگر بخوایم تشخیص بدیم مقدار متغیر $a بین 1 تا 100 قرار داره باید از عملگر منطقی استفاده کنیم .
عملگرهای منطقی
عملگر ! نام این عملگر (نقیض یا NOT) مثال $b اگر $b نادرست باشه نتیجه درسته و برعکس
" && نا م این عملگر (و یا AND) مثال : a && $b $ اگرa$ و b$ هر دو درست باشند . نتیجه درست است و گرنه نادرست
" || نا م این عملگر(یا ) مثال : a ||$b$ اگر a$ یا b$ درست باشند نتیجه درست است و گرنه نادرست
" and نا م این عملگر(و یا AND) مثال a and $b$ مثال && است ولی اولویت کنتری داره
" or نا م این عملگر(یا) مثال b or $a$ مثال || است ولی اولویت کمتری داره
عملگرهای ترکیبی
بچه ها تعدادی عملگر در پی اچ پی وجود دارن که ترکیبی از عملگرهای دیگه هستند و با نام عملگرهای ترکیبی شناخته می شن
این عملگر ها هم به شکل زیر هستند.
عملگر =+ نام عملگر انتساب جمع مثال a += $b$ معادل a = $a +$b$
" =- نام عملگر انتساب تفریق مثال a -= $b$ معادل a= $a-$b$
" =* نام عملگر انتساب ضرب مثال a *= $b$ معادل a= $a*$b$
" =/ نام عملگر انتساب تقسیم مثال a /= $b$ معادل a= $a /$b$
" =% نام عملگر انتساب باقیمانده تقسیم مثال a % $b$ معادل a =$a %$b$
عملگرهای رشته ای
یکی از متداول ترین عملی که در رشته ها انجام میشه عمل الحاق کردن رشته هاست
مثال:
کد PHP:
$a = "web"
$b = "host"
اگر با استفاده از a$ و b$ رشته "webhost" رو بدست بیاریم میگیم رشته a$ به رشته b$ الحاق شده.
بچه ها برای اینکار یعنی الحاق رشته ها در پی اچ پی از عملگر (.) استفاده میشه
کد PHP:
$a = "web"
$b = "host"
$c = $a.$b
اگر بخواهیم بین این دورشتهیا کلمه یک فاصله هم قرار بدیم به شکل زیر عمل میکنیم:
کد PHP:
$a = "web"
$b = "host"
$space =" "
$c = $a.$space.$b
و نتیجه "web host" خواهد بود
دو نوع رشته در پی اچ پی هست اونایی که در کتیشن دوتایی یا نقل قول دوتایی قرار میگرن و اونهایی که در
کتیشن یکانی یا نقل قول یکانی قرار میگیرن
"web"
'host'
دقت کنید اگر در نقل قول دوتایی قرار بگیره php سعی میکنه اونها رو مثل یه عبارت ارزیابی کنه . ولی اگر تو نقل قول یکانی قرار بگیره مثل یه لیترال عمل میکنه و ارزیابی نمیشه
واسه اینکه کامل جا بیفته یهمثال هم براتون میزنم
کد PHP:
$a = 100
echo "value of $a";
echo 'value of $a';
دستور اول مقدار 100 رو به متغیرمون میده
خروجی دستور دوم به این شکله:
value of 100
,ولی خروجی دستور سوم به این شکل:
value of $a
فکر کنم با این مثال کامل جا افتاده باشه
---------- Post added at 04:08 PM ---------- Previous post was at 02:47 PM ----------
مورد بعدی عملگرهای بیتی که موجب می شن تا اعداد صحیح به صورت دنباله ای از بیت ها مورد استفاده قرار بگیرن
این ها شاید استفاده زیادی توی php نداشته باشن به همین خاطر فقط به معرفی اونهای میپردازیمک
عملگر & نام (و) مثال a & $b$ اگر دو بیت متناظر یک باشند نتیجه یک است .
عملگر | نام (یا) مثال a | $b$ اگر یک بیت در a$ یا b$ یک باشند نتیجه یک است .
عملگر ~ نام (نقیض) مثال a $~ اگر یک باشد نتیجه 0 است . و برعکس
عملگر ^ نام (یای انحصاری ) مثال a ^ $b$ اگر یکی از بیت های a$ یا b$ (یا هر دو)یک باشند نتیجه یک است .
عملگر >> نام (شیفت چپ) مثال a<<$b$ را به مقدار b$ بیت ضیفت می دهد.
عملگر << نام (شیفت راست) مثال a>>$b$ را به مقدار b$ بیت ضیفت می دهد.
خوب بچه ها این عملگرها رو هم براتون معرفی کردم و همونطور که گفتم کاربرد زیادی در این زبان نداره
میریم سر عملگرهای متفرقه
یه تعداد عملگر هستند که توی هیچ دسته بندی قرار نمی گیرن نا اونها رو تحت عنوان عملگرهای متفرقه بررسی میکنیم
اولیش عملگر ؟ هست که یه شرط رو تست می کنه بر اساس نتیجه آن مقداری رو توی متغیر قرار میده
به این شکل:
; مقدار 2 :مقدار 1 ؟ شرط = متغیر
اگر شرط ارزش درتی داشته باشه مقدار 1 و گرنه مقدار 2 در متغیر قرار میگیره
مثال:
کد PHP:
$a = 5;
$x = $a < 7 ? $a *2 : $a * 3;
چون شرط 7 >a$ ارزش درستی داره حاصل 2*a$ ، یعنی 10 توی x$ قرار میگیره
راستی به عملگر ؟ عملگر 3 تایی هم میگن چون روی 3 تا مقدار عمل میکنه
عملگر@
این عملگر جلوی هر عبارت یا هر چیزی قرار میگیره که مقداری رو تولید میکنه به این شکل مانع بروز خطا توی اون عبارت میشه
مثال
اگه از این علامت توی این مثال استفاده نشه اونوقت اخطار تقسیم بر صفر میده
ولی وقتی ازش استفاده بشه مانع بروز خطا میشه
عملگر ارجاع
عملگر ارجاع توی php با & (ampersand) مشخص میشه و با عملگر انتساب (=) به کار میره.
با اجرای دستور دوم a$ و b$ برابر 5 میشن
حالا به این دستورات توجه کنید
کد PHP:
$a =5;
$b = &$a;
$a = 10 ;
با اجرای دستور دوم ، b$ به عنوان مرجع متغیر a$ تعیین میشه
دستور سوم موجب می شه a$ و b$ هر دو برابر با 10 میشن
---------- Post added at 07:02 PM ---------- Previous post was at 05:08 PM ----------
مفهوم دستورات و توابع
پردازش هایی که تو php باید انجام بده از طریق دستورات و توابع اجرا میشن
دستور فرمانی برای موتور php محسوب میشه و اون رو وادار میکنه که کاری انجام بده هر دستور در php به ; ختم میشه
تابع مجموعه ای از دستورات است که فعالیتی رو انجام میده هر تابع دارای نامیه که برای اجراشدن باید فرا خوانی بشه
توابع در php به دو دسته تقسیم می شن:
1-توابع کتابخانه ای
2- توابع ساخت کاربر
کاتابخونه ایها اونهایی هستن که از قبل نوشته شدن و همراه برنامه وجود دارن و همه برنامه نویس ها میتونن ازش استفاده کنن
اما اگه توابع کتابخونه ای جوابگوی نیاز برنامه نویس نباشه می تونه تابع مورد نیاز خودشو بنویسه و ازش استفاده کنه کمی جلوتر بریم نحوه ساخت توابع رو هم یاد میگیریم
شروع و پایان دستورات php
موقع نوشتن برنامه های php باید به موتور php اطلاع بدیم که میخواهیم فرمان های این زبان رو اجرا کنیم وگرنه کدی که مینویسیم بوسیله مرورگر قابل تشخیص نیست و ارور میده
به همین دلیل دستورات php رو توی تگ های خاصی قرار میدیم .با این کار در واقع ابتدا و انتهای دستورات php رو مشخص می کنیم.
4 تا تگ برای این کار در نظر گرفته شده که بهترتیب براتون مینویسم
1- php?> (تگ شروع) <? (تگ پایان) تگ های استاندارد
2- ؟> " " " تگ های کوتاه
3- %> " <% " تگ های asp
4- (تگ شروع) <"script> <script language ="php/> (تگ پایان) تگ های اسکریپت
بچه ها دقت کنید روش اول و آخر بدون مشکل در تمام پیکر بندی ها بدرستی اجرا میشه اما دوم و سوم باید در فایل php.ini فعال بشه این فایل فایل پیکربندی php هست که دستکاری کردن اون رو هم توضیح میدم
برای فعال کردن تگ های کوتاه فایل php.ini رو باز میکنید و سوئیچ short_open_tag رو فعال میکنید
short_open_tag= on;
برای غیر فعال کردنشون هم مقدار on رو به off تبدیل کنید
برای فعال کردن تگ های asp هم به صورت زیر عمل کنید
asp_tags=on;
بعد از این کارا فایل رو ذخیره کنید و سیستم رو ریاستارت کنید
تا اینجا با عملگرها ،توابع، ثابت ها، و متغیر ها آشنا شدیم حالا میخوام دستوری رو بگم که بوسیله اون اطلاعات نمایش داده میشن
برای این کار دستور echo و تابع ()print بررسی میکنیم
این دو تا کاراشون مثل همه و استفاده ازشون به شما بستگی داره
یه مثال برای دستور echo
کد PHP:
$total = 100;
echo "total is :";
echo $total ;
خوب دقت کنید دستور اول یه مقداری رو در متغیر total $ قرار میده
دستور دوم یه پیغام رو چاپ میکنه
و دستور سوم مقدار متغیر total$ رو نشون میده
میرسیم به تالع ()print
کد PHP:
$total = 100;
print ("total is :");
print ($total);
---------- Post added at 07:14 PM ---------- Previous post was at 07:02 PM ----------
خوب حالا یه صفحه طراحی می کنیم که یه خروجی با echo و یک خروجی با ()print به ما بده
کد PHP:
<?php
$a=100;
$b=10.5;
echo "<b>output with echo"."<br>";
echo "<b>the value of first variable is:".$a."<br>";
echo "<b>the value of second variable is:".$b;
print("<br>output of print "."<br>");
print("the value of first variable is.".$a."<br>");
print("the value of second variable is:".$b);
?>
برای اجرای فایل های php به نرم افزار هایی مثل ومپ نیاز دارید که آموزش نصبش در تاپیک های دیگه قرار داده شده و کار باهاش بسیار سادس
حتما قبل از اجرای فایل هاتون این برنامه رو نصب و اجرا کنید
---------- Post added at 09:13 PM ---------- Previous post was at 07:14 PM ----------
تابع ()date
تابع ()date تاریخ و زمان فعلی محلی رو نشون میده و به صورت زیر کار میکنه
کد PHP:
date(format[,timestanp]);
format مشخص می کند تاریخ یا زمان با چه قالبی نمایش داده شوند .
timestamp مقداریه که می تونه به یک تاریه تبدیل بشه . اگر ذکر نشه زمان فعلی منظور میشه که همون مقدار تابع
()time که در ادامه راجع بهش حرف میزنیم
کدهایی که در تابع date قرار میگیرن تعدادیشون رو براتون معرفی میکتن
کد a صبح یا بعد از ظهر بودن رو بصورت am یا pm نشون میده
کد d روز رو بصورت عدد دو رقمی نشون میده که از 01 تا 31 هست
کد D بصورت سه حرفی نشون میده از mon تا sun
کد F نام ماه ها رو بصورت کانل نمایش میده که از junuary تا december هست
و...که در ادامه خدمتتون ارائه میدم
تابع بعدی تابع ()time هست
که زمان فعلی سیستم رو بصورت یک عدد صحیح نشون میده که مشخص میکنه چند ثانیه از تاریخ اول ژوئن 1970 تا
کنون گذشته .این مبداء زمان رو unix epoch میگن
و عددی که بر حسب ثانیه توسط این تابع برگردونده میشه مهر زمان نام داره .
در ادامه مثالی در این مورد براتون میزنم
کد PHP:
<?php
echo "<b>current date is :".date("jS F Y")."<br>";
echo "RFC822 format:".date("r")."<br>";
echo "current time and date :".date("H:i, jS F Y")."<br>";
echo "week number is :".date("W")."<br>";
$nextweek=time()+(7*24*60*60);
echo "now:".date('Y-m-d')."<br>";
echo "next week :".date('Y-m-d',$nexstweek);
?>
این کد ها رو بنویسید و خروجی رو مشاهده کنید.