什么是;EGPCS“;用PHP是什么意思?
我在什么是;EGPCS“;用PHP是什么意思?,php,Php,我在php.ini中找到了以下代码。这是什么意思 还有“PHP寄存器”——那是什么 ; This directive describes the order in which PHP registers GET, POST, Cookie, ; Environment and Built-in variables (G, P, C, E & S respectively, often ; referred to as EGPCS or GPC). Registration is done fr
php.ini
中找到了以下代码。这是什么意思
还有“PHP寄存器”——那是什么
; This directive describes the order in which PHP registers GET, POST, Cookie,
; Environment and Built-in variables (G, P, C, E & S respectively, often
; referred to as EGPCS or GPC). Registration is done from left to right, newer
; values override older values.
variables_order = "EGPCS"
; 此指令描述PHP注册GET、POST、Cookie、,
; 环境和内置变量(分别为G、P、C、E&S,通常为
;称为EGPCS或GPC)。注册是从左到右进行的,较新
; 值覆盖旧值。
变量\u order=“EGPCS”
有关该指令的手册可能会对您有所帮助:(引用): 设置EGPC的顺序 (环境、获取、发布、Cookie和 (服务器)变量解析。例如 如果变量的顺序设置为“SP”,则 PHP将创建超全局变量
$\u服务器
和$\u发布
,但不创建
$\u ENV
,$\u GET
和$\u COOKIE
。开始
“”表示不会设置超全局
另请注意(再次引用):
$\u请求的内容和顺序为
也受本指令的影响
我认为这个选项在不久前更为重要,当时仍然使用register_globals,正如同一页所述(引用):
如果已弃用的注册表\u globals
指令处于打开状态(从PHP开始删除
6.0.0),然后变量\u order还配置ENV、GET、,
POST、COOKIE和服务器变量是
在全局范围内填充。所以
如果变量_顺序设置为
“EGPCS”,寄存器\全局被启用,
和$\u GET['action']
和
$\u设置POST['action']
,然后$action
将包含
$\u POST['action']
因为P在G之后
我们的示例指示值
我看不出我能补充什么;这有用吗?
或者这是导致您出现问题的原因吗?它控制全局变量$\u GET
,$\u POST
等由PHP定义的顺序。字母仅代表类别,例如,g
代表$\u GET
。我严重怀疑你是否想破坏这种设置。以上公认的答案是好的。但这里需要注意的另一个重要点是,如果未设置这些标志中的任何一个,则脚本运行时该变量将为空,即,如果变量的顺序设置为“GPCS”,则$\u ENV变量将始终为空数组。你真的读过你发布的文档了吗?@Sean Bright:是的,但我不知道PHP寄存器的用途是什么?你在我问题的底部看到了吗?是的。答案就在你发布的文档中。@Sean Bright:这些订单有什么用??你知道吗?@Pascal MARTIN:对不起(,为什么我们需要为这些变量设置顺序。我不明白?如果有一个变量的名称与在$\u GET和$\u COOKIE中传递的方式相同,那么在将$\u GET、$\u POST、$\u COOKIE……合并到$\u请求中时,PHP必须知道其中哪一个必须首先使用……以及哪一个将覆盖第一个。这在是的(至少,如果我们不使用$\u请求),但是当使用register\u globals时,依赖这种顺序在我们的变量中设置正确的值并不少见;您可以在$\u GET中设置一个“action”,在$\u COOKIe中设置另一个“action”;但是$\u请求中只能有一个:将是哪一个?;-)是的,我知道了!!谢谢你,伙计!!:-)这就是我真正想要的答案:-)。c u on next post:)控制顺序意味着,如果寄存器_global设置为on,则为冲突变量名提供优先级。例如,如果$\u GET['name']和$\u POST['name']同时存在,则此顺序对于将值设置为$name很重要。