ثابت ها در PHP – مقدمه:

در ادامه بخش های آموزش php فقط در ۱۰ مرحله، می خواهیم با  تعریف ثابت ها در php  آشنا شویم. این دومین بخش از اولین مرحله از این سری آموزشی می باشد.

در این آموزش می آموزیم که به چه نحوی باید ثابت ها در php تعریف شوند. همچنین با نحوه استفاده از ثابت ها در پی اچ پی آشنا می شویم.

سپس با ثابت های از پیش تعریف شده زبان php آشنا می شویم که با آن ها Predefined Constants گفته می شود. همچنین می آموزیم که چگونه از این ثابت ها در php استفاده کنیم.

ثابت ها در php - وبمستر وردپرس

این مطلب در تاریخ ۱۷ فروردین ۱۳۹۹ مجددا بازنگری و آپدیت شده و کدهای آن به روزرسانی شده و نکات جدید به همراه فیلم به آن اضافه شده است. 

در انتها با ثابت های جادویی php آشنا می شویم که به آن ها Magic Constants گفته می شود و نحوه استفاده از این ثابت ها در php را مورد بررسی قرار می دهیم.

چند نکته قبل از شروع آموزش ثابت ها در PHP

شما برای آشنایی با انواع ثابت ها و همین طور نحوه تعریف آن ها درPHP، می توانید از مقاله این صفحه استفاده کنید.

این مقاله یکی از جامع ترین مقالات و کاربردی ترین آن ها در سطح وب فارسی می باشد. با خواندن این مقاله به راحتی به همه مفاهیم ثابت ها و انواع آن در PHP آشنا می شوید و عملا نیازی به سورس های اضافه تر نخواهید داشت.

فیلم ابتدایی قرار داده شده در این مقاله، بخش هایی از دوره آموزش PHP است که بخشی از دوره وبمستران وردپرس (دوره حضوری) می باشد.

برای تهیه کامل این فیلم، می توانید به سایت کلوپ وبمستران وردپرس (که مرجع آموزش های حرفه ای وبمستری برای وردپرس) می باشد، مراجعه کنید.

فیلم آموزش انواع ثابت در PHP

درخواست برای مشاوره رایگان پروژه

انجام کلیه پروژه های برنامه نویسی به صورت کاملا حرفه ای

ما پروژه های برنامه نویسی شما را با بهترین کیفیت و در کمترین زمان ممکن انجام می دهیم. برای مشاوره رایگان می توانید فرم تماس با ما را تکمیل نمایید تا در کمتر از یک روز کاری با شما تماس گرفته شود.
درخواست برای مشاوره رایگان پروژه

بخش اول: تعریف ثابت ها در PHP

در بخش اول نکات مربوط به تعریف ثابت ها در php را بیان خواهیم کرد. این نکات به صورت لیست وار در ادامه آمده است:

  • ثابت ها در PHP چیستند؟

    ثابت در واقع یک شناسه یا یک نام برای یک مقدار ساده است. این مقدار در طول اجرای برنامه یا همان اسکریپت ثابت بوده و تغییر نمی کند.

  • نحوه نام گذاری ثابت ها در PHP

    قوانین نام گذاری ثابت ها در php همانند قوانین نام گذاری متغیرها بوده با این تفاوت که حرف اول نام ثابت ها در php باید با یک حرف یا Underscore آغاز گردد.

  • حوزه تعریف و فعالیت ثابت ها در PHP

    برخلاف متغیرها در php ، ثابت ها در php به صورت خودکار به صورت سراسری در همه برنامه قابل دسترس هستند. در واقع با تعریف یک ثابت در پی اچ پی این ثابت به صورت global تعریف می شود.

  • تعریف ثابت ها در PHP

    برای تعریف ثابت در php از تابع define به صورت زیر استفاده می کنید. پارامتر سوم این تابع مربوط به case-sensitive بودن می باشد که در حالت پیش فرض برابر false می باشد.

    در صورتی که این مقدار برابر true قرار داده شود، فرقی نمی کند که از حروف بزرگ یا کوچک برای فراخوانی ثابت در php استفاده کنیم.

  • Best Practice ها در تعریف ثابت ها در PHP

    عموما best practice برای تعریف ثابت این می باشد که نام گذاری ثابت با حروف بزرگ انجام شده و بین هر کلمه (در صورت چند بخشی بودن) با Underscore از کلمه بعدی جدا گردد.

//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
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

    این ثابت ورژن فعلی که پی اچ پی از آن استفاده می کند را نمایش می دهد.

  • ثابت PHP_OS

    ثابت PHP_OS نوع سیستم عاملی که php بر روی آن اجرا می شود را به نمایش در می آورد.

  • ثابت PHP_EOL

    ثابت PHP_EOL بسته به نوع سیستم عامل عمل می کند. این ثابت در ویندوز معادل کاراکترهای \r\n شناخته می شود و در سیستم عامل های خانواده لینوکس به عنوان \n شناخته می شود.

  • ثابت PHP_INT_MAX

    ثابت PHP_INT_MAX در واقع بزرگترین عدد صحیح که پی اچ پی می تواند از آن پشتیبانی کند را به نمایش در می آورد.

  • ثابت PHP_FLOAT_MAX

    ثابت PHP_FLOAT_MAX بزرگترین عدد اعشاری که پی اچ پی از آن پشتیبانی می کند را نمایش می دهد.

  • ثابت TRUE

    ثابت TRUE برای نمایش مقدار بولین true مورد استفاده قرار می گیرد.

  • ثابت FALSE

    ثابت FALSE برای نمایش مقدار بولین false مورد استفاده قرار می گیرد.

  • ثابت NULL

    ثابت NULL برای نمایش مقدار بولین null مورد استفاده قرار می گیرد.

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 عبارتند از:

  • ثابت __LINE__

    ثابت __LINE__ شماره خط جاری در اجرای برنامه را بازگشت می دهد.

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
  • ثابت __FILE__

    ثابت __FILE__ مسیر کامل فایلی که در حال اجرا می باشد را بر می گرداند. این مسیر شامل نام فایل مورد نظر نیز می باشد. در واقع ثابت __FILE__ به عنوان خروجی full path و نام فایل php که در آن اجرا می شود را به عنوان خروجی بر می گرداند.

  • ثابت __DIR__

    ثابت __DIR__ دایرکتوری فایلی که در حال اجرا می باشد را به عنوان خورجی باز می گرداند.

  • ثابت __FUNCTION__

    ثابت __FUNCTION__ ، نام تابعی که در حال اجرا می باشد را به عنوان خروجی باز می گرداند.

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__

    ثابت __CLASS__ نام کلاس جاری را که در حال اجراست به عنوان خروجی باز می گرداند.

class MsnClass
{
    public function getClassName(){
        return __CLASS__;
    }
}

$sample_object = new MsnClass();

echo $sample_object->getClassName(); 
// Displays: MsnClass
  • ثابت __METHOD__

    ثابت __METHOD__ نام متد جاری که در حال استفاده از آن می باشد را به عنوان خروجی بازگشت می دهد.

class MsnSample
{
    public function msnMethod(){
        echo __METHOD__;
    }
}

$sample_object = new MsnSample();

$sample_object->msnMethod(); 
// Displays: Sample::msnMethod
  • ثابت __NAMESPACE__

    ثابت __NAMESPACE__ ، نام namespace ای را که در حال حاضر در آن هستیم را به عنوان خروجی باز می گرداند.

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 ، از لینک های زیر استفاده شده است که برای مراجعه به آن ها می توانید از لیست زیر استفاده کنید:

راهنما برای خواندن سایر مقالات سایت به صورت دسته بندی شده:

شما می توانید از طریق لینک های کاربردی زیر به سایر مقالات سایت که کاملا بصورت طبقه بندی شده وجود دارد، مراجعه نموده و از آن ها استفاده کنید: