Php 未定义索引-奇数行为
我有一个JSON数组,我正在用PHP排序。JSON通过AJAX发送到服务器。出于某种原因,我的排序只适用于JSON数组中的大多数索引 这是Php 未定义索引-奇数行为,php,Php,我有一个JSON数组,我正在用PHP排序。JSON通过AJAX发送到服务器。出于某种原因,我的排序只适用于JSON数组中的大多数索引 这是类 class FieldSorter { public $field; function __construct($field) { $this->field = $field; } function sortIt($a, $b) { if ($a[$this->field] =
类
class FieldSorter {
public $field;
function __construct($field) {
$this->field = $field;
}
function sortIt($a, $b) {
if ($a[$this->field] == $b[$this->field]) return 0;
return ($a[$this->field] > $b[$this->field]) ? 1 : -1;
}
}
我的JSON示例*类似于
record {
"key": "AAA",
"default_title": "SOME DEFAULT TITLE",
"big_stamp": "101515004186",
"date_stamp": "1015",
"time_stamp": "15004186",
"real_title": "SOME TITLE",
"display_title": "SOME TITLE (3)",
"display_stamp": "Oct 15th - 3:00:41 pm"
}
我可以按以下方式分类:
- 钥匙
- 所有邮票
- 默认标题
real\u title
或display\u title
搜索时,它显示为未定义的索引。我已验证了所有实例中的拼写
编辑从AJAX到控制台的错误输出
注意:未定义索引:显示标题
该错误意味着某些数组元素缺少某些字段,因此需要处理缺少的数据
function sortIt($a, $b) {
$field_a = isset($a[$this->field]) ? $a[$this->field] : '';
$field_b = isset($b[$this->field]) ? $b[$this->field] : '';
if ($field_a == $field_b) return 0;
return ($field_a > $field_b) ? 1 : -1;
}
确保所有数组元素都有这些字段。请编辑问题并显示准确的错误消息。您可以发布生成此错误的数组的示例吗?这解决了我的问题,并且确实指出了一条缺少这些值的记录,谢谢您的回复。我将在上面添加错误。