在PHP中,魔术变量(Magic Variables)通常指的是那些由PHP自动定义和管理的特殊变量。这些变量在不同的上下文中具有不同的值,并且它们的值是由PHP运行时环境自动设置的。以下是一些常见的魔术变量:
__LINE__:
echo __LINE__; 会输出当前行号。__FILE__:
echo __FILE__; 会输出当前文件的路径。__DIR__:
echo __DIR__; 会输出当前文件所在的目录路径。__FUNCTION__:
echo __FUNCTION__; 会输出当前函数的名称。__CLASS__:
echo __CLASS__; 会输出当前类的名称。__TRAIT__:
echo __TRAIT__; 会输出当前Trait的名称。__METHOD__:
echo __METHOD__; 会输出当前方法的名称,包括类名。__NAMESPACE__:
echo __NAMESPACE__; 会输出当前命名空间的名称。$this:
$this 是一个特殊的变量,它指向当前对象实例。$this->property 可以访问当前对象的属性。$_SERVER:
$_SERVER['PHP_SELF'] 返回当前脚本的文件名。$_GET:
$_GET['name'] 可以获取URL中的 name 参数。$_POST:
$_POST['name'] 可以获取表单中 name 字段的值。$_REQUEST:
$_GET、$_POST 和 $_COOKIE 的内容。$_REQUEST['name'] 可以获取通过GET、POST或COOKIE提交的 name 参数。$_SESSION:
$_SESSION['username'] 可以存储和获取当前会话的用户名。$_COOKIE:
$_COOKIE['user'] 可以获取名为 user 的Cookie值。$_FILES:
$_FILES['file']['name'] 可以获取上传文件的原始名称。$_ENV:
$_ENV['PATH'] 可以获取系统的PATH环境变量。$GLOBALS:
$GLOBALS['variable'] 可以访问全局变量 $variable。这些魔术变量和超全局变量在PHP开发中非常有用,可以帮助开发者获取当前脚本的上下文信息、处理表单数据、管理会话等。