در تپش این هفته، ماجرای فریب و تعرض در پوشش عرفانهای دروغین و رمالی را بررسی کردیم
متغیرها:
تعریف متغیرها و انتساب مقدار به آنها، از اصول اولیه یادگیری یک زبان برنامهنویسی است. یکی از ویژگیهای PHP این است که نوع داده در آن مثل زبانهای دیگر مهم نیست. به فرض شما یک متغیر دارید که مقدار رشتهای در آن ذخیره کردهاید. پس از اجرا کردن چند دستور میتوانید در همان متغیر یک عدد اعشاری را ذخیره کنید بدون این که خللی در روند برنامه وارد شود. این ویژگی در بعضی موارد خوب است و گاهی نیز شما را اذیت میکند. پیشنهاد میشود در تعریف متغیرها در PHP نوع آن را در نام متغیر ذکر کنید.
اما قواعد نامگذاری متغیرها در PHP مانند دیگر زبانهاست؛ یعنی نام متغیرها نمیتواند با عدد شروع شود و... .
برای مثال:
$4site = 'not yet';
$_4site = 'not yet';
$täyte = 'mansikka';
مورد اول اشتباه است، چرا که با عدد شروع شده ، اما 2 مورد بعدی درست است.
همچنین انواع داده در PHP و همان طور که گفته شد نوع داده برای متغیرها در PHP اهمیتی ندارد.
$int = 16;
$float = 15/5;
$boolean = true;
$string = «Hello World!»;
$object = new Person();
در بالا ۵ نوع داده اصلی را مثال آوردیم، مقدار $int یک عدد صحیح ۳۲ یا ۶۴ بیت را معرفی میکند که معادل int و long در زبان C است. float$ یک عدد اعشاری را مشخص میکند که معادل آن در C، double و float است و boolean$ یک مقدار باینری یا صفر و یک را نشان میدهد. مقدار صفر برابر غلط یا false است و مقداری غیر از صفر معنای درست دارد، مقدار string$ هم یک رشته متنی را نشان میدهد؛ در نهایت object$ نشاندهنده یک شیء از یک کلاس است.
یکی دیگر از انواع داده مهم در PHP آرایهها هستند؛ آرایهها در PHP با زبانهای دیگر قدری متفاوت است. با ذکر یک مثال این موضوع را بیشتر توضیح میدهیم.
$arrayVariable = array (1,2,3,4,5);
مثال بالا مقدار arrayVariable$ یک آرایه ۵ تایی را که شامل اعداد یک تا ۵ است، نشان میدهد. برای دسترسی به آرایههای آن میتوان به صورت زیر عمل کرد:
$arrayVariable[0], $arrayVariable[1], $arrayVariable[2],...
تا اینجای کار مانند دیگر زبانهاست؛ اما اندیس آرایه شما میتواند یک رشته متنی باشد (در زبان #C به آن Indexer میگویند). بگذارید آرایه بالا را دوباره بنویسیم.
$arrayVariable = array (“1”=»1,”2”=»2);
از این به بعد میتوانید بنویسید:
$arrayVariable[“1”], $arrayVariable[“2”],…
شما میتوانید اندیسهای خود را ترکیبی کنید؛ یعنی یک عنصر اندیس آن عدد باشد و دیگری یک رشته متنی، مثلا:
$arrayVariable = array (“1”=»1,2=»2);
آرایه دوبعدی نیز براحتی تعریف میشود. کافی است هر عنصر آرایهای را معادل یک آرایه قرار دهید، مثلا:
$arrayVariable = array(“test”=»array (1,2,3,4,5));
تا اینجا با تعریف متغیرهای اصلی در PHP آشنا شدید؛ اما زبان PHP یکسری متغیر را به صورت پیشفرض معرفی کرده که در زیر آنها را به اختصار بیان کردهایم.
POST_$: این متغیر یک آرایه از مقادیری است که به صفحه شما POST شدهاند. اما یعنی چه؟ همانطور که در شماره پیش گفته شد PHP یک زبان اسکریپتی تحت وب است. اما اطلاعات ورودی را چگونه دریافت میکند؟ این اطلاعات یا به وسیله فرمهای html یا از طریق url به کد ما ارسال میشود. منظور از فرمهای HTML این است که در html یک تگ form وجود دارد که در آن چند input قرار دارد، شما برای form علاوه بر یک action، درون آن نیز یک دکمه submit تعریف میکنید. وقتی کاربر روی submit کلیک کرد اطلاعاتی که در inputهای درون فرم وارد شدهاند به صورت Key/Value (کلید مقدار) ـ که کلید برابر نام آن Input و مقدار برابر مقدار آن input است ـ برای صفحه مورد نظر POST میشوند. این اطلاعات در متغیر POST_$ قرار دارد.
GET_$: این متغیر دقیقا مانند POST_$ عمل میکند منتها با یک تفاوت. حتما دیدهاید وقتی روی یک لینک کلیک میکنید نشانی آن به صورت زیر است:
http://domain.com/test.PHP?id= 1&name=click
این نشانی شامل 2 متغیر است که اصطلاحا به آنها Query String میگویند. در مثال بالا
id=1 و 2name = click متغیر هستند، این مقدارها به صورت یک Value ،Key (کلید مقدار) در GET_$ ذخیره میشوند.REQUEST_$: این متغیر آرایهای است که شامل POST_$ و GET_$ میشود و همین طور COOKIE_$ (کوکی اطلاعات ذخیره شده در رایانه مقصد است).
حلقهها
حلقهها در PHP مانند زبان C و دیگر زبانهاست، تنها تفاوتی که وجود دارد حلقه foreach است که قدری فرق دارد. فرض کنید میخواهیم مقداری متغیر POST_$ را نمایش دهیم که به صورت زیر مینویسیم:
foreach($_POST as $post){
echo $post;
}
اما مقدار post$ چیست؟ مقدار post$ برابر مقدار عنصر آرایه است، اما همانگونه که گفتیم آرایهها به صورت کلید مقدار هستند و ما میخواهیم یک عنصر خاص را بررسی کنیم. در این وضعیت باید چه کنیم؟ کافی است حلقه بالا را به صورت زیر بازنویسی کنید:
foreach($_POST as $key=»$value){
echo $key.” is “ .$value.”«br/»”;
}
اگر کد بالا را اجرا کنید، خروجی به صورت کلید مقدار برای شما نمایش داده خواهد شد. نمونه خروجی بالا به صورت زیر است:
Name is Click
Page is Programming
امیربهاالدین سبط الشیخ
در تپش این هفته، ماجرای فریب و تعرض در پوشش عرفانهای دروغین و رمالی را بررسی کردیم
گزارش «جامجم» درباره دستاوردهای زبان فارسی در گفتوگو با برخی از چهرههای ادب معاصر
معاون وزیر بهداشت: