English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP Basic Tutorial

PHP Advanced Tutorial

PHP & MySQL

PHP Reference Manual

السيمبولات الخوارزمية في PHP

In this tutorial, you will learn how to use PHP magic constants.

What are magic constants

InPHP ConstantsIn this chapter, we learned how to define and use constants in PHP scripts.

In addition, PHP also provides a set of special predefined constants that change according to the position where they are used. These constants are called magic constants. For example, the value of __line__ depends on the line it is used in the script.

Magic constants start with two underscores and end with two underscores. The following part describes some of the most useful PHP magic constants.

__LINE__

__LINE__ constant returns the current line number of the file, as shown below:

<?php
echo "Line number " . __LINE__ . "<br>"; // Output: Line number 2
echo "Line number " . __LINE__ . "<br>"; // Output: Line number 3
echo 	"رقم الخط 	" 	. 	__LINE__ 	. 	"<br>"; 	// 	الناتجة: 	رقم الخط 	4
؟>
اختبار لرؤية‹/›

__FILE__

__FILE__ المعدل ثابت يعود المسار الكامل والاسم للملف PHP الذي يتم تنفيذه. إذا تم استخدامه في include، يعود اسم الملف المضمون.includeإذا تم استخدامه في include، يعود اسم الملف المضمون.

<?php
// 	عرض المسار المطلق للملف
echo 	"المسار الكامل للملف: 	" 	. 	__FILE__;
؟>
اختبار لرؤية‹/›

__DIR__

__DIR__ المعدل ثابت يعود مجلد الملف. إذا تم استخدامه في include، يعود مجلد الملف المضمون.

<?php
// 	عرض مجلد هذا الملف
echo 	"مجلد هذا الملف: 	" 	. 	__DIR__;
؟>
اختبار لرؤية‹/›

__FUNCTION__

__FUNCTION__ المعدل ثابت يعود اسم الدالة الحالية.

<?php
function 	myFunction(){
    echo 		"اسم الدالة هو 	- 	" 	. 	__FUNCTION__;
}
myFunction(); 	// 	الناتجة: 	اسم الدالة هو 	- 	myFunction
؟>
اختبار لرؤية‹/›

__CLASS__

__CLASS__ المعدل ثابت يعود اسم الفئة الحالية.الفئةالاسم. هذا مثال:

<?php
class 	MyClass
{
    public 	function 	getClassName(){
        return 	__CLASS__;
    }
}
$obj 	= 	new 	MyClass();
echo 	$obj->getClassName(); 	// 	الناتجة: 	MyClass
؟>
اختبار لرؤية‹/›

__METHOD__

__METHOD__ المعدل ثابت يعود اسم الطريقة الحالية للفئة.

<?php
class 	Sample
{
    public 	function 	myMethod(){
        echo 	__METHOD__;
    }
}
$obj 	= 	new 	Sample();
$obj->myMethod(); 	// 	الناتجة: 	Sample::myMethod
؟>
اختبار لرؤية‹/›

__NAMESPACE__

__NAMESPACE__ المعدل ثابت يعود اسم النطاق الحالي.

<?php
namespace 	MyNamespace;
class 	MyClass
{
    public 	function 	getNamespace(){
        return 	__NAMESPACE__;
    }
}
$obj 	= 	new 	MyClass();
echo 	$obj->getNamespace(); 	// 	الناتجة: 	MyNamespace
؟>
اختبار لرؤية‹/›