Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/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_Function_Sorting_Callback_Global - Fatal编程技术网

Php 全局不工作/如何按属性值排序

Php 全局不工作/如何按属性值排序,php,function,sorting,callback,global,Php,Function,Sorting,Callback,Global,有人能解释一下为什么$property在函数外部'name'在函数内部null吗?我已经检查了var\u dump,我不明白为什么这不起作用。那里的global关键字不应该把它带进去吗 $property = $_GET['property']; // 'name' function cmp($a, $b) { global $property; return strnatcmp($a->$property, $b->$property); } usort($file

有人能解释一下为什么
$property
在函数外部
'name'
在函数内部
null
吗?我已经检查了
var\u dump
,我不明白为什么这不起作用。那里的global关键字不应该把它带进去吗

$property = $_GET['property']; // 'name'
function cmp($a, $b)
{
    global $property;
    return strnatcmp($a->$property, $b->$property);
}
usort($files, 'cmp');
或者,你有更好的方法吗?

检查这个问题:

如果提供的代码段在另一个函数(或通过另一个函数包含的文件)中调用,则$property不是全局的,因此无法通过

global $property;
你可以做一些简单的事情,因为$\u GET已经是全球性的了

function cmp($a, $b)
{
    $property = $_GET['property'];
    return strnatcmp($a->property , $b->$property);
}
usort($files, 'cmp');