在我的 symfony 项目中,我需要能够在删除重复项的同时合并多个对象数组。
例如 :
数组 1:
Array
(
[0] => Absence Object
(
[id] => 1
[type] => TypeConge Object ([id] => 4, [nom] => "Maladie")
[user] => User Object (......)
[debut] => 12-11-2019 00:00:00
)
[1] => Absence Object
(
[id] => 2
[type] => TypeConge Object ([id] => 5, [nom] => "CA")
[user] => User Object (......)
[debut] => 13-11-2019 00:00:00
)
[2] => Absence Object
(
[id] => 3
[type] => TypeConge Object ([id] => 4, [nom] => "Maladie")
[user] => User Object (......)
[debut] => 11-11-2019 00:00:00
)
)
阵列 2:
Array
(
[0] => Absence Object
(
[id] => 1
[type] => TypeConge Object ([id] => 4, [nom] => "Maladie")
[user] => User Object (......)
[debut] => 12-11-2019 00:00:00
)
[1] => Absence Object
(
[id] => 8
[type] => TypeConge Object ([id] => 4, [nom] => "Maladie")
[user] => User Object (......)
[debut] => 17-11-2019 00:00:00
)
)
输出:
Array
(
[0] => Absence Object
(
[id] => 1
[type] => TypeConge Object ([id] => 4, [nom] => "Maladie")
[user] => User Object (......)
[debut] => 12-11-2019 00:00:00
)
[1] => Absence Object
(
[id] => 2
[type] => TypeConge Object ([id] => 5, [nom] => "CA")
[user] => User Object (......)
[debut] => 13-11-2019 00:00:00
)
我使用这段代码来做到这一点:
$demandes = $this->getDemandesValidateur($unUser, $search, $superValidation);
$tabDemandes = array_merge($tabDemandes, $demandes);
$tabDemandes = array_map("unserialize", array_unique(array_map("serialize", $tabDemandes)));
但我的印象是,由于序列化和反序列化,它会导致错误。我得到了很好的决赛桌,但有些数据似乎无法使用。例如我不能打电话:
$absence->getType()->getNom();
它有时会返回 null。是因为我的代码吗?
手掌心
慕雪6442864