نوع داده
یک شنبه 28 آذر 1389 7:45 AM
PHP همه متغیرها را در یک محدوده مستقل ذخیره میکند .این محدوده به طور نمونه ۳۲ بیت اعداد علامتدار است. اعداد بدون علامت در حالتهای معینی به مقادیر علامتدار تبدیل میشوند: این رفتار در زبانهای برنامه نویسی متفاوت است.متغیرهای صحیح میتوانند به صورت دهدهی(مثبت یا منفی) ٬هشت هشتی و شانزده شانزدهی مشخص شوند.
اعداد واقعی نیز در محدوده معینی ذخیره میشوند.آنها میتوانند به دو صورت اعشاری و علمی استفاده شوند.PHP دارای نوع محلی به نام بولین میباشد که شبیه به بولین در زبان جاوا و ++C است.در نوع داده بولین مقدار غیر صفر به عنوان درست و مقدار صفر به عنوان نادرست استفاده میشود.همانطور که در پرل و ++C نیز همین طور است.
نوع داده null برای متغیرهایی که هیچ مقداری ندارند استفاده میشود.متغیرهایی با نوع مرجع به منابع خارجی اشاره میکنند.اینها نوعا توسط توابع ایجاد میشوند و تنها میتوانند با همان تابع مورد استفاده قرار گیرند.مانند پوشهها و عکسها و پایگاه داده.PHP آرایهها و رشتهها را هم حمایت میکند.
کتابخانه استانداردPHP(SPL) به منظور حل مسائل استاندارد و دسترسی به دادههای موثر و کلاسها به کار میرود.
۵٫۲ و قدیمی تر :
توابع بهترین توابع نیستند و تنها میتوانند با نامشان صدا زده شوند.توابع تعریف شده توسط کاربر میتوانند بیرون از نمونه اولیه ایجاد شوند.توابع میتوانند در درون بلوکها تعریف شوند.توابع فراخوانی شده باید از پرانتز استفاده کنند.به جز آرگومان zero توابع سازنده کلاس با اپراتور new فراخوانده میشوند.در اینجا پرانتزها اختیاری هستند. PHP توابع بی نام را که توسط دستور function_ creat ایجاد میشوند را هم پشتیبانی میکند.اگر چه درست نیستند چون توابع بی نام از اسم بر خوردار نیستند و توابع تنها میتئانند توسط نامشان صدا زده شوند. ۵٫۳ وجدیدتر:
PHP از توابع درجه اول و توابع بی نام حمایت میکند که توسط ساختار زیر پشتیبانی میشوند:
function getAdder($x) { Return function ($y) use ($x) { return $x + $y; }; }
در اینجا تابع( )getAdder یک پارامتر x$ ایجاد میکند که آرگومان y$ اضافی را میگیرد و آنرا به صدا زننده بر میگرداند.