包含两个没有键的数组的数组


array containing two arrays with no key

当我发现一个数组($array)包含两个没有键的数组时,我正在压缩我的脚本,如下所示:

array(19) {
  ["id"]=>
  string(3) "243"
  ["var"]=>
  string(4) "test"
}
array(10) {
  ["id"]=>
  int(243)
}

它们都包含不同的数据,我只是删除了大部分数据,以显示我在说什么。现在,我将最终找到原因并修复它,但我需要的是一个临时修复,以从第一个数组中获得var的值。目前,当我使用print_r和var_dump时,我确实得到了var的实际值,但也得到了NULL。因此,我似乎无法将var的值存储在变量中。

有什么想法吗?

这是完整的阵列(一些敏感数据被屏蔽)

Array
(
    [id] => 243
    [ordering] => 0
    [state] => 1
    [checked_out] => 203
    [checked_out_time] => 2013-07-17 14:28:15
    [status] => new
    [order_id] => 84
    [username] => 267
    [ankleside] => left
    [engraving] => left
    [serial] => 152
    [color_padding] => left
    [color_shell] => left
    [scan] => SCAN_2013-07-17_xxxxxx_X_hotmail.com_LEFT.PNG
    [workfile] => WORK_2013-07-17_xxxxxx_X_hotmail.com_LEFT.png
    [stlfile] => 2013-07-17_xxxxxx_X_hotmail.com_LEFT_.jpg
    [timespent] =>
    [created_by] => 203
)
Array
(
    [id] => 243
    [status] => new
    [username] => 267
    [ankleside] => left
    [engraving] => left
    [scan] => SCAN_2013-07-17_xxxxxxx_X_hotmail.com_LEFT.PNG
    [workfile] =>
    [stlfile] => fb-foto.png
    [issues] =>
)

不知何故,var_dump();被调用了两次。尝试在var_dump($array);之后添加echo "done";进行验证。

您也可以添加debug_print_backtrace();来帮助您了解它是如何被调用两次的。http://www.php.net/manual/en/function.debug-print-backtrace.php