【发布时间】:2014-02-10 04:58:53
【问题描述】:
这是两个数组转储
第一个数组
Array
(
[0] => Array
(
[table_no] => T1
[min_table] => 2
[seat_per_table] => 2
)
[1] => Array
(
[table_no] => T2
[min_table] => 2
[seat_per_table] => 4
)
[2] => Array
(
[table_no] => T3
[min_table] => 2
[seat_per_table] => 4
)
[3] => Array
(
[table_no] => T4
[min_table] => 2
[seat_per_table] => 4
)
[4] => Array
(
[table_no] => T5
[min_table] => 2
[seat_per_table] => 4
)
)
第二个数组
Array
(
[0] => Array
(
[table_no] => T3
)
[1] => Array
(
[table_no] => T4
)
[2] => Array
(
[table_no] => T5
)
)
预期数组
Array
(
[0] => Array
(
[table_no] => T1
[min_table] => 2
[seat_per_table] => 2
)
[1] => Array
(
[table_no] => T2
[min_table] => 2
[seat_per_table] => 4
)
)
我尝试了array_diff(),但没有给出结果。
然后尝试使用unset(),
foreach($example2 as $key => $value) {
foreach($example1 as $key1 => $value1) {
if ($value1 == $value) {
unset($example2[$key])
}
}
}
这不起作用。
我怎样才能使它正常工作?
这里我想比较 array-1 中的 'table_no' 和 array-2 中的 'table_no'
谢谢。
【问题讨论】:
-
这些是对象数组。您需要在
array_diff()之前将它们转换为使用 -
你的两个数组中的对象完全不同。
-
看看这个线程。 [php中两个数组的区别][1][1]:stackoverflow.com/questions/8826908/…
-
array_diff()只比较数组元素的字符串值。除非您的对象有 toString 方法,否则您将需要编写自己的函数。 us3.php.net/array_diff -
您期望结果是什么?你能贴一个例子吗?