Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:不区分大小写的参数_Php_Variables_Performance_Query String_Case Insensitive - Fatal编程技术网

PHP:不区分大小写的参数

PHP:不区分大小写的参数,php,variables,performance,query-string,case-insensitive,Php,Variables,Performance,Query String,Case Insensitive,我如何不敏感地接受传递的GET或POST值大小写 如sample.php?OrderBy=asc仍将与sample.php?OrderBy=asc或sample.php?OrderBy=asc 是否有有效实现上述功能的方法?您可以使用所有大写或小写键创建$\u GET的副本 $_GET_lower = array_change_key_case($_GET, CASE_LOWER); $orderby = isset($_GET_lower['orderby']) ? $_GET_lower['

我如何不敏感地接受传递的
GET
POST
值大小写

sample.php?OrderBy=asc
仍将与
sample.php?OrderBy=asc
sample.php?OrderBy=asc

是否有有效实现上述功能的方法?

您可以使用所有大写或小写键创建
$\u GET
的副本

$_GET_lower = array_change_key_case($_GET, CASE_LOWER);
$orderby = isset($_GET_lower['orderby']) ? $_GET_lower['orderby'] : 'asc';
echo $orderby;
(我之所以说“创建一个副本”,仅仅是因为我不喜欢污染原始的超球体,但如果您愿意,您可以选择覆盖它们。)


就这一点而言,最好还是坚持区分大小写的匹配,因为它可能在搜索引擎和人眼上都更容易,在代码上也更容易编辑:好的,根据您的评论,我可以看出您为什么要这样做。

不确定是否有好的解决方案,但我遇到了这样的问题,哈希密码的大小写变小了,无法使用;所以要小心,我建议首先看看为什么会发生这种情况;通常,当从HTTP转换为HTTPS(或返回)时,URL的大小写变为小写。更改大小写的原因是什么?我正在开发一个API,系统以前为其他使用大写的API客户端提供服务,最近我们对API做了一些更改,包括决定使用小写参数。因此,为了保持与以前的API用户的向后兼容性,我面临着这样的问题。更改大小写的原因是什么?当使用VBA中的Shell命令启动默认web浏览器时,如果浏览器是Windows 10 Edge浏览器,我已将url神秘地更改为所有小写。但并非所有的Windows 10计算机上都有,
ID
ID
ID
都是相同的,我一直在开发一个API。。。谢谢@BoltClock