【超全局变量】
超全局变量是在全部作用域中始终可以使用的内部变量。在函数或方法中也无需执行global $variable;就可访问它们。
【$GLOBALS】
引用全局作用域中可用的全部变量。是一个包含了全局变量的全局组合数组,变量的名字就是数组的键。
【$_SERVER】
一个包含头信息、路径、脚本位置等信息的数组。该数组的元素由Web服务器创建。
PHP_SELF:当前执行脚本的文件名,与document root有关。如:地址为http://example.com/test/php/foo.bar的脚本,$_SERVER['PHP_SELF']='/test.php/foo.bar'。(FILE常量包含了当前文件的完整路径和文件名)
argv:传递给该脚本的参数的数组。脚本以CLI方式运行时,argv传递给程序C语言样式的命令行参数。通过GET方式调用时,改变量包含Query String。
argc:脚本在CLI运行模式下传递给脚本参数的数目。
GATEWAY_INTERFACE:服务器使用的CGI规范的版本。如:“CGI/1.1"。
SERVER_ADDR:当前运行脚本所在服务器的IP地址。
SERVER_NAME:当前运行脚本所在服务器的主机名。如果脚本运行在虚拟主机中,该变量由虚拟主机所设置的值决定。
SERVER_SOFTWARE:服务器标识字符串,在响应请求的头信息中给出。
SERVER_PROTOCOL:请求页面时,通信协议的名称和版本。如:"HTTP/1.0"。
REQUEST_METHOD:访问页面使用的方法。如:GET、HEAD、POST、PUT。(如果请求方法为HEAD,PHP脚本将在Header头信息之后终止,不产生任何输出,没有输出缓冲)
REQUEST_TIME:请求开始时的时间戳。
QUERY_STRING:查询字符串。如果有的话,通过它进行页面访问。
DOCUMENT_ROOT:当前运行脚本所在的文档根目录。在服务器配置文件中定义。
HTTP_ACCEPT:当前请求头中的Accept项的内容(如果存在的话)。
HTTP_ACCEPT_CHARSET:当前请求头中Accept-Charset项的内容(如果存在的话)。
HTTP_ACCEPT_ENCODING:当前请求中Accept-Encoding项的内容(如果存在的话)。
HTTP_ACCEPT_LANGUAGE:当前请求中Accept-Language项的内容(如果存在的话)。
HTTP_CONNECTION:当前请求头中Connection项的内容(如果存在的话)。
HTTP_HOST:当前请求头中Host项的内容(如果存在的话)。
HTTP_REFERER:引导用户代理到当前页面的前一页的地址(如果存在)。由user agent设置决定。并不是所有用户都会设置该项,有的还提供的修改HTTP_REFERER的功能。所以该值不可信。
HTTP_USER_AGENT:当前请求头中User-Agent项的内容(如果存在)。该字符串表明了访问该页面的用户代理信息,如:Mozilla/4.5[en] (X11;U;Linux 2.2.9 i586)。此外可以使用get_browser()获取该值。
HTTPS:如果脚本通过HTTPS协议被访问,该值被设置为一个非空的值。使用IIS上的ISAPI方式时,如果不是通过HTTPS协议被访问,该值将为off。
REMOTE_ADDR:浏览当前页面的用户的IP地址。
REMOTE_HOST:浏览当前页面的用户的主机名。DNS反向解析不依赖于用户的REMOTE_ADDR。必须配置服务器以便产生该变量,如Apache中设置HostnameLookups On。
REMOTE_PORT:用户机器连接到Web服务器所使用的端口号。
SCRIPT_FILENAME:当前执行脚本的绝对路径。
SERVER_ADMIN:该值指明了Apache服务器配置文件中的SERVER_ADMIN参数。若脚本运行在虚拟主机上,则该值为那个虚拟主机的值。
SERVER_PORT:Web服务器使用的端口。默认是80.如果使用SSL安全连接,则该值为用户设置的HTTP端口。
SERVER_SIGNATURE:包含了服务器版本和虚拟机主机名的字符串。
PATH_TRANSLATED:当前脚本所在的文件系统(非文档根目录)的基本路径。这是服务器进行虚拟到真实路径的映像后的结果。
SCRIPT_NAME:包含当前脚本的路径。
REQUEST_URI:URI用来指定要访问的页面。
PHP_AUTH_DIGEST:当作为Apache模块运行时,进行HTTP Digest认证的过程中,改变量被设置为客户端发送的“Authorization”HTTP头内容。
PHP_AUTH_USER:当PHP运行在Apache或IIS模块下,并正在使用HTTP认证功能,改变量是用户输入的用户名。
PHP_AUTH_PW:当PHP运行在Apache或IIS模块下,并正在使用HTTP认证功能,改变量是用户输入的密码。
AUTH_TYPE:当PHP运行在Apache模块方式下,并正在使用HTTP认证功能,改变量是认证的类型。
PATH_INFO:包含客户端提供的,跟在真实脚本名称之后且在查询语句之前的路径信息(如果存在)。
ORIG_PATH_INFO:在被PHP处理之前,"PATH_INFO"的原始版本。
【$_GET】
HTTP GET变量。
包含通过URL参数传递给当前脚本的变量的数组。
通过urldecode()传递。
echo htmlspecialchars($_GET['name']);
【$_POST】
HTTP POST变量。
通过HTTP POST方法传递给当前脚本的变量的数组。
echo htmlspecialchars($_POST['name']);
【$_FILES】
HTTP文件上传变量。
通过HTTP POST方式上传到当前脚本的文件的数组。
【$_REQUEST】
HTTP REQUEST变量。
默认情况下包含了$_GET,$_POST,$_COOKIE的数组。
通过PHP的variables_order指令或import_request_variables()设置GPC的顺序。
【$_SESSION】
Session变量。
【$_ENV】
环境变量。
通过环境方式传递给当前脚本的变量的数组。这些变量被PHP解析器运行环境导入到PHP的全局命名空间。很多由支持PHP运行的Shell提供。
【$_COOKIE】
HTTP Cookies。
通过HTTP Cookies方式传递给当前脚本的变量的数组。
【$php_errormsg】
前一个错误信息。
$php_errormsg包含了由PHP生成的最新错误信息。改变量只在错误发生的作用域内可用,并且要求track_errors配置项是开启的(默认是关闭的)。
如果用户定义了错误处理句柄(set_error_handler())并且返回FALSE的时候,$php_errormsg就会被设置。
【$HTTP_RAW_POST_DATA】
原生POST数据。包含POST提交的原始数据。
【$http_response_header】
HTTP响应头。
与get_header()类似。当使用HTTP包装器时,改变量将会被HTTP响应头信息填充。该变量将被创建于局部作用域中。
【$argc】
CLI模式下传递给脚本的参数数目。仅在register_argc_argv打开时可用。
脚本文件名总是作为参数传递给当前脚本。
【$argv】
传递给脚本的参数数组。仅在register_argc_argv打开时可用。
第一个参数总是当前脚本的文件名。
以上是php 预定义变量有哪些?的详细内容。更多信息请关注PHP中文网其他相关文章!

PHP在现代编程中仍然是一个强大且广泛使用的工具,尤其在web开发领域。1)PHP易用且与数据库集成无缝,是许多开发者的首选。2)它支持动态内容生成和面向对象编程,适合快速创建和维护网站。3)PHP的性能可以通过缓存和优化数据库查询来提升,其广泛的社区和丰富生态系统使其在当今技术栈中仍具重要地位。

在PHP中,弱引用是通过WeakReference类实现的,不会阻止垃圾回收器回收对象。弱引用适用于缓存系统和事件监听器等场景,需注意其不能保证对象存活,且垃圾回收可能延迟。

\_\_invoke方法允许对象像函数一样被调用。1.定义\_\_invoke方法使对象可被调用。2.使用$obj(...)语法时,PHP会执行\_\_invoke方法。3.适用于日志记录和计算器等场景,提高代码灵活性和可读性。

Fibers在PHP8.1中引入,提升了并发处理能力。1)Fibers是一种轻量级的并发模型,类似于协程。2)它们允许开发者手动控制任务的执行流,适合处理I/O密集型任务。3)使用Fibers可以编写更高效、响应性更强的代码。

PHP社区提供了丰富的资源和支持,帮助开发者成长。1)资源包括官方文档、教程、博客和开源项目如Laravel和Symfony。2)支持可以通过StackOverflow、Reddit和Slack频道获得。3)开发动态可以通过关注RFC了解。4)融入社区可以通过积极参与、贡献代码和学习分享来实现。

PHP和Python各有优势,选择应基于项目需求。1.PHP适合web开发,语法简单,执行效率高。2.Python适用于数据科学和机器学习,语法简洁,库丰富。

PHP不是在消亡,而是在不断适应和进化。1)PHP从1994年起经历多次版本迭代,适应新技术趋势。2)目前广泛应用于电子商务、内容管理系统等领域。3)PHP8引入JIT编译器等功能,提升性能和现代化。4)使用OPcache和遵循PSR-12标准可优化性能和代码质量。

PHP的未来将通过适应新技术趋势和引入创新特性来实现:1)适应云计算、容器化和微服务架构,支持Docker和Kubernetes;2)引入JIT编译器和枚举类型,提升性能和数据处理效率;3)持续优化性能和推广最佳实践。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

记事本++7.3.1
好用且免费的代码编辑器

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。