ویرگول
ورودثبت نام
Mohsen
Mohsenیه برنامه نویس وب که شدید علاقه داره به یادگیری بیشتر توی زمینه کاریش و مسائل مرتبط با آی.تی و تکنولوژی :))
Mohsen
Mohsen
خواندن ۳ دقیقه·۵ سال پیش

برنامه نویسی PHP از صفر تا صد! - بخش دوم: ثابتها

توی مطلب آموزشی قبلی با کلیات PHP و مفهوم متغیر و نوع استفاد و تعریفش آشنا شدید. توی این مطلب با یه مفهوم جدید به نام ثابت یا Constant و با تلفظ کانستِنت آشنا میشید.

ثابت توی PHP به چی میگن؟

قبلا گفتیم که میشه مقادیر متغیرها رو هرچندبار که خواستیم تغییر بدیم؛ مثلا:

<?php
$variable = 18;
$variable = 19;
$variable = 20;
echo $variable; // 20
?>
خروجی کد بالا عدد 20ه؛ چرا؟

چون متغیرها اسمشون روشونه و میشه هرچندبار دلمون خواست هی تغییرشون بدیم!

یه اصل خیلی مهم که باید از همین حالا بدونین درک طرز کار مفسر کدهای phpه که اصطلاحا بهش میگن کامپایلر یا Compiler. پی اچ پی یک زبان مفسریه؛ یعنی میاد کل خط کدها رو یکجا و از بالا به پایین تفسیر و اجرا میکنه و خروجی نهایی رو تحویل میده و اگه خطائی هم داشت آخر سر نشون میده؛

پس توی کد بالا، بار اول مفسر میاد مقدار متغیر $variable رو 18 قرار میده، بعد میره خط بعد میبینه همون اسم مقدارش شده 19، پس عدد جدید رو جایگزین قبلی میکنه، باز میره خط بعدترش و میبینه همون متغیر با همون اسم بازم مقدار جدیدی گرفته و ایندفعه 20 رو قرار میده توی $variable و در نهایت 20 رو هم توی خروجی نشون میده با دستور اکو.

همین حالا برید توی سایت sandbox.onlinephpfunctions.com که تو درس اول معرفیش کردم و کدهای بالا رو اجرا کنید تا قشنگ متوجه بشید.

اما فرق ثابتها و متغیرها چیه؟ چطور تعریف و استفاده میشن؟

از لحاظ عملکرد فرق خیلی خاصی با متغیرها ندارن؛ قواعد نامگذاریشون هم یکیه، ولی نحوه تعریفشون متفاوته. ثابت توی پی اچ پی اینجوری تعریف میشه:

define("SABET", "something");

یعنی اولش کلمه کلیدی دیفاین (define) میاد و بعد پرانتز باز و اسم ثابت و آخر سر هم مقدار ثابت به شکل بالا تعریف میشه.

  • از ثابتها برای ذخیره کردن مقادیری استفاده میکنن که توی کدنویسی محتواش تغییر نمیکنه؛ مثلا یوزرنیم و پسورد یک دیتابس برای اتصال که میخوایم جاهای مختلف ازش استفاده کنیم؛ یا آدرس یه عکس ثابت برای لوگوی سایت و ...
  • طبق یک قرارداد در PHP، اسامی ثابتها رو باید با حروف بزرگ نوشت؛ مثل مثال بالا.
  • یکی از فواید استفاده از ثابتها اینه که بعدا در امر توسعه کد، برنامه نویسها میدونن که مقدار ذخیره شده رو نباید تغییر داد. و اگه هم احیانا از اسمش بصورت اشتباهی استفاده شد و دوباره تعریف شد، همون مقدار اول در نظر گرفته میشه، بر خلاف متغیر که مقدار آخر رو در نظر میگرفت.
  • و نکته آخر اینکه، توی تعریف ثوابت، نیازی به استفاده از علامت $ نیست.

البته توی نسخه های جدید php میشه به این شکل هم تعریفش کرد، ولی من همون شکل سابق رو ترجیح میدم. شکل جدید از لحاظ سرعت و مصرف حافظه سریعتر از مدل قبلیه و برای سایتهای خیلی بزرگ مفیده.

const SABET = "something";

نحوه استفاده

<?php

define("DB_NAME", "my_db");

echo DB_NAME; // my_db

?>

مثال دوم برای اینکه ببینید مقدار ثابت تغییری نمیکنه اگه دوباره تعریف بشه:

<?php

define("DB_NAME", "my_db");

define("DB_NAME", "your_db");

echo DB_NAME; // my_db

?>

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

پس اینم شد مفهوم ثابت و کلیاتش که امیدوارم یاد گرفته باشید.

خوش بگذره و منتظر آموزشهای بعدی باشید.

رمز یادگیری اینه که تا میتونین تمرین کنین، پس برای این جلسه و از همین حالا شروع کنید برای خودتون با اسامی مختلف ثابت تعریف کنین و هی چاپ کنید و خروجیش رو ببینید!
۹
۳
Mohsen
Mohsen
یه برنامه نویس وب که شدید علاقه داره به یادگیری بیشتر توی زمینه کاریش و مسائل مرتبط با آی.تی و تکنولوژی :))
شاید از این پست‌ها خوشتان بیاید