ثابت ها در PHP – مقدمه:
در ادامه بخش های آموزش php فقط در ۱۰ مرحله، می خواهیم با تعریف ثابت ها در php آشنا شویم. این دومین بخش از اولین مرحله از این سری آموزشی می باشد.
در این آموزش می آموزیم که به چه نحوی باید ثابت ها در php تعریف شوند. همچنین با نحوه استفاده از ثابت ها در پی اچ پی آشنا می شویم.
سپس با ثابت های از پیش تعریف شده زبان php آشنا می شویم که با آن ها Predefined Constants گفته می شود. همچنین می آموزیم که چگونه از این ثابت ها در php استفاده کنیم.
این مطلب در تاریخ ۱۷ فروردین ۱۳۹۹ مجددا بازنگری و آپدیت شده و کدهای آن به روزرسانی شده و نکات جدید به همراه فیلم به آن اضافه شده است.
در انتها با ثابت های جادویی php آشنا می شویم که به آن ها Magic Constants گفته می شود و نحوه استفاده از این ثابت ها در php را مورد بررسی قرار می دهیم.
چند نکته قبل از شروع آموزش ثابت ها در PHP
شما برای آشنایی با انواع ثابت ها و همین طور نحوه تعریف آن ها درPHP، می توانید از مقاله این صفحه استفاده کنید.
این مقاله یکی از جامع ترین مقالات و کاربردی ترین آن ها در سطح وب فارسی می باشد. با خواندن این مقاله به راحتی به همه مفاهیم ثابت ها و انواع آن در PHP آشنا می شوید و عملا نیازی به سورس های اضافه تر نخواهید داشت.
فیلم ابتدایی قرار داده شده در این مقاله، بخش هایی از دوره آموزش PHP است که بخشی از دوره وبمستران وردپرس (دوره حضوری) می باشد.
برای تهیه کامل این فیلم، می توانید به سایت کلوپ وبمستران وردپرس (که مرجع آموزش های حرفه ای وبمستری برای وردپرس) می باشد، مراجعه کنید.
فیلم آموزش انواع ثابت در PHP
بخش اول: تعریف ثابت ها در PHP
در بخش اول نکات مربوط به تعریف ثابت ها در php را بیان خواهیم کرد. این نکات به صورت لیست وار در ادامه آمده است:
//Syntax of define constant in php define(name, value, case-insensitive); define('MSN_INTEGER',100); echo MSN_INTEGER; //it will print 100 in output define('MSN_INTEGER',100,true); echo MSN_INTEGER; echo Msn_InTeger; echo msn_integer; //results of all are the same
global بودن کلیه ثابت ها در php
ثابت ها پس از تعریف در php به صورت اتوماتیک دارای scope سراسری یا همان global scope خواهند بود و می توانند در همه جا مورد استفاده قرار بگیرند.
به عنوان مثال اگر ثابتی در خارج از یک تابع تعریف شده باشد، شما به راحتی می تواند درون تابع از آن استفاده کنید.
define("MSN_WELCOME", "Welcome to WPWebmaster site."); function msnTest() { echo MSN_WELCOME; } msnTest(); //it will print related message in output
بخش دوم: ثابت های از پیش تعریف شده PHP
زبان پی اچ پی دارای ثابت های از پیش تعریف شده می باشد که به آن ها Predefined Constants گفته می شود. این ثابت ها در هسته زبان php تعریف شده و قابل استفاده در همه بخش های یک برنامه می باشند.
در ادامه به چند تا از مهم ترین ثابت های از پیش تعریف شده در پی اچ پی اشاره خواهیم کرد. برای دیدن لیست کامل Predefined Constants می توانید به بخش پایین مراجعه کنید.
PHP_VERSION (string) //The current PHP version as a string in "major.minor.release[extra]" notation. PHP_MAJOR_VERSION (integer) //The current PHP "major" version as an integer (e.g., int(5) from version "5.2.7-extra"). Available since PHP 5.2.7. PHP_MINOR_VERSION (integer) //The current PHP "minor" version as an integer (e.g., int(2) from version "5.2.7-extra"). Available since PHP 5.2.7. PHP_RELEASE_VERSION (integer) //The current PHP "release" version as an integer (e.g., int(7) from version "5.2.7-extra"). Available since PHP 5.2.7. PHP_VERSION_ID (integer) //The current PHP version as an integer, useful for version comparisons (e.g., int(50207) from version "5.2.7-extra"). Available since PHP 5.2.7. PHP_EXTRA_VERSION (string) //The current PHP "extra" version as a string (e.g., '-extra' from version "5.2.7-extra"). Often used by distribution vendors to indicate a package version. Available since PHP 5.2.7. PHP_ZTS (integer) //Available since PHP 5.2.7. PHP_DEBUG (integer) //Available since PHP 5.2.7. PHP_MAXPATHLEN (integer) //The maximum length of filenames (including path) supported by this build of PHP. Available since PHP 5.3.0. PHP_OS (string) //The operating system PHP was built for. PHP_OS_FAMILY (string) //The operating system family PHP was built for. Either of 'Windows', 'BSD', 'Darwin', 'Solaris', 'Linux' or 'Unknown'. Available as of PHP 7.2.0. PHP_SAPI (string) //The Server API for this build of PHP. See also php_sapi_name(). PHP_EOL (string) //The correct 'End Of Line' symbol for this platform. Available since PHP 5.0.2 PHP_INT_MAX (integer) //The largest integer supported in this build of PHP. Usually int(2147483647) in 32 bit systems and int(9223372036854775807) in 64 bit systems. Available since PHP 5.0.5 PHP_INT_MIN (integer) //The smallest integer supported in this build of PHP. Usually int(-2147483648) in 32 bit systems and int(-9223372036854775808) in 64 bit systems. Available since PHP 7.0.0. Usually, PHP_INT_MIN === ~PHP_INT_MAX. PHP_INT_SIZE (integer) //The size of an integer in bytes in this build of PHP. Available since PHP 5.0.5 PHP_FLOAT_DIG (integer) //Number of decimal digits that can be rounded into a float and back without precision loss. Available as of PHP 7.2.0. PHP_FLOAT_EPSILON (float) //Smallest representable positive number x, so that x + 1.0 != 1.0. Available as of PHP 7.2.0. PHP_FLOAT_MIN (float) //Smallest representable floating point number. Available as of PHP 7.2.0. PHP_FLOAT_MAX (float) //Largest representable floating point number. Available as of PHP 7.2.0. DEFAULT_INCLUDE_PATH (string) PEAR_INSTALL_DIR (string) PEAR_EXTENSION_DIR (string) PHP_EXTENSION_DIR (string) PHP_PREFIX (string) //The value "--prefix" was set to at configure. PHP_BINDIR (string) //Specifies where the binaries were installed into. PHP_BINARY (string) //Specifies the PHP binary path during script execution. Available since PHP 5.4. PHP_MANDIR (string) //Specifies where the manpages were installed into. Available since PHP 5.3.7. PHP_LIBDIR (string) PHP_DATADIR (string) PHP_SYSCONFDIR (string) PHP_LOCALSTATEDIR (string) PHP_CONFIG_FILE_PATH (string) PHP_CONFIG_FILE_SCAN_DIR (string) PHP_SHLIB_SUFFIX (string) //The build-platform's shared library suffix, such as "so" (most Unixes) or "dll" (Windows). PHP_FD_SETSIZE (string) //The maximum number of file descriptors for select system calls. Available as of PHP 7.1.0. E_ERROR (integer) //Error reporting constant E_WARNING (integer) //Error reporting constant E_PARSE (integer) //Error reporting constant E_NOTICE (integer) //Error reporting constant E_CORE_ERROR (integer) //Error reporting constant E_CORE_WARNING (integer) //Error reporting constant E_COMPILE_ERROR (integer) //Error reporting constant E_COMPILE_WARNING (integer) //Error reporting constant E_USER_ERROR (integer) //Error reporting constant E_USER_WARNING (integer) //Error reporting constant E_USER_NOTICE (integer) //Error reporting constant E_RECOVERABLE_ERROR (integer) //Error reporting constant. Available since PHP 5.2.0 E_DEPRECATED (integer) //Error reporting constant. Available since PHP 5.3.0 E_USER_DEPRECATED (integer) //Error reporting constant. Available since PHP 5.3.0 E_ALL (integer) //Error reporting constant E_STRICT (integer) //Error reporting constant __COMPILER_HALT_OFFSET__ (integer) //Available since PHP 5.1.0 TRUE (boolean) FALSE (boolean) NULL (null)
بخش سوم: متغیرهای جادویی در PHP
به دسته ای از ثابت های از پیش تعریف شده در زبان php ، ثابت های جادویی یا همان Magic Constants گفته می شود.
در واقع ثابت های جادویی ثابت هایی هستند که بسته به اینکه کجا مورد استفاده قرار گیرند، مقدار آن ها تفاوت خواهد کرد.
به عنوان مثال خروجی ثابت __LINE__ به این بستگی دارد که این ثابت در کدام خط کد مورد استفاده قرار گرفته شده باشد.
مهم ترین ثابت های جادویی در php عبارتند از:
echo "Line number " . __LINE__ . "<br>"; // Displays: Line number 1 echo "Line number " . __LINE__ . "<br>"; // Displays: Line number 2 echo "Line number " . __LINE__ . "<br>"; // Displays: Line number 3 echo "Line number " . __LINE__ . "<br>"; // Displays: Line number 4
echo "The full path of this file is: " . __FILE__; // Displays the absolute path of this file echo "The directory of this file is: " . __DIR__; // Displays the directory of this file function msnFunction(){ echo "The function name is - " . __FUNCTION__; } msnFunction(); // Displays: The function name is: msnFunction
class MsnClass { public function getClassName(){ return __CLASS__; } } $sample_object = new MsnClass(); echo $sample_object->getClassName(); // Displays: MsnClass
class MsnSample { public function msnMethod(){ echo __METHOD__; } } $sample_object = new MsnSample(); $sample_object->msnMethod(); // Displays: Sample::msnMethod
namespace MsnNamespace; class MsnClass { public function getNamespace(){ return __NAMESPACE__; } } $sample_object = new MyClass(); echo $sample_object->getNamespace(); // Displays: MsnNamespace
نتیجه گیری برای مقاله تعریف ثابت ها در PHP
در این مقاله به صورت خلاصه در مورد انواع ثابت ها در php صحبت شد. همچنین در مورد نحوه تعریف ثابت ها در پی اچ پی به صورت کامل با مثال بحث شد.
در ادامه با ثابت های پیش فرض Php آشنا شدیم و لیست کامل Predefined Constants در زبان php به تشریح آورده شد.
در انتهای مقاله نیز با ثابت های جادویی در php یا همان Magic Constants و نحوه کار آن ها آشنا شدیم.
ممکن است شما موارد بیشتری را بدانید که ما فراموش کرده ایم تا در این مقاله قرار دهیم.
اگر شما از این موارد آگاه هستید، حتما در بخش نظرات عنوان کنید تا آن را به مقاله “ثابت ها در php” اضافه کنیم. در ضمن اگر این مقاله را مفید دیدید، حتما آن را به دوستان خود معرفی کرده یا در شبکه های اجتماعی به اشتراک بگذارید.
راهنما برای مطالعه بیشتر:
برای تولید مقاله ثابت ها در php ، از لینک های زیر استفاده شده است که برای مراجعه به آن ها می توانید از لیست زیر استفاده کنید:
راهنما برای خواندن سایر مقالات سایت به صورت دسته بندی شده:
شما می توانید از طریق لینک های کاربردی زیر به سایر مقالات سایت که کاملا بصورت طبقه بندی شده وجود دارد، مراجعه نموده و از آن ها استفاده کنید:
سلام مناسب بود ممنون
اگر تونستید آموزش پیاده سازی سیستم دانشگاهی با معماری mvc با زبان php بزارید تو سایت
اولین مشتریش خودمم
سلام به شما دوست عزیز،
بسیار ممنونم که وقت بسیار با ارزش خود رو گذاشتید تا برای ما پیام ارسال کنید.
خوشحالیم که این مطلب برای شما مناسب بوده.
در آینده نزدیک، برنامه برای پیاده سازی یک سیستم به صورت mvc داریم که توسط خبرنامه سایت، اطلاع رسانی خواهیم کرد.
سپاس فراوان
ممنون از مطالب مفیدتان خصوصا که بصورت نوشتاری هم هست، خدا خیرتان بده به خاطر آموزشهای رایگان….
سلام به شما دوست عزیز
بسیار ممنونم که وقت ارزشمند خودتان را گذاشتید تا برای ما پیام بفرستید.
از اینکه این مطالب، به کار شما آمده است، واقعا خوشحالیم. پیام های دلگرم کننده شده، باعث ادامه راه توسط ما خواهد شد.
سپاس فراوان
سلام
جالبه برام از وقتی اومدم سایتتون ۱ ساعت گذشته و متوجه نشدم خخخخ
هرچی میچرخم اینجا قسمت هایی که دوست دارم پیدا میکنم
سایت خوبی پیدا کردم ولی سر سری سایتتونو دیدم حالا سایتتونو تو گوشیم سیو کردم وقتم ازاد شد میام دوباره میبینم
ممنون
سلام به شما دوست عزیز
از لطف و نظر شما بسیار سپاسگزاریم. از اینکه وقت گذاشتید و برای ما نظرات مثبت خودتون رو ارسال کردید، کمال سپاس و تشکر رو داریم.
نظرات سازنده شما، باعث دلگرمی ما شده و باعث میشه که با تلاش بیشتر به راهمون ادامه بدیم.
از شما بسیار ممنون هستیم