So habe ich die folgenden:PHP - array_search nicht wie erwartet funktioniert - funktioniert nicht dann
echo array_search('Resolved at Tier 1', array_column($getHighLevelOverviewPeriodsArray, 'status'));
print_r($getHighLevelOverviewPeriodsArray);
if (!array_search('Resolved at Tier 1', array_column($getHighLevelOverviewPeriodsArray, 'status'))) {
$resolved = array('status' => 'Resolved at Tier 1', 'amount' => 0);
array_splice($getHighLevelOverviewPeriodsArray, 0, 0, array($resolved));
}
print_r($getHighLevelOverviewPeriodsArray);
Das Echo spuckt eine Null aus, was recht ist. Es existiert in erster Linie. Allerdings läuft der zweite Teil (if-Anweisung) und die array_splice
wird ausgeführt. Die Ausgabe von print_r ist unten.
Was wird ausgeführt, obwohl es da ist?
Ich habe den exakt gleichen Code für Tier 2, Zeichen für Zeichen (erwarten für die 2) und das funktioniert wie erwartet.
Array
(
[0] => Array
(
[status] => Resolved at Tier 1
[amount] => 10
)
[1] => Array
(
[status] => Resolved at Tier 2
[amount] => 7
)
[2] => Array
(
[status] => Resolved Total
[amount] => 17
)
[3] => Array
(
[status] => Phone Calls
[amount] => 0
)
)
Array
(
[0] => Array
(
[status] => Resolved at Tier 1
[amount] => 0
)
[1] => Array
(
[status] => Resolved at Tier 1
[amount] => 10
)
[2] => Array
(
[status] => Resolved at Tier 2
[amount] => 7
)
[3] => Array
(
[status] => Resolved Total
[amount] => 17
)
[4] => Array
(
[status] => Phone Calls
[amount] => 0
)
)
Warum haben Sie array ($ resolved) am Ende Ihrer gespleißten Anweisung anstatt nur $ aufgelöst, da $ resolved bereits ein Array ist? – Difster
Das war, was ich sah, musste getan werden, aber unabhängig davon - die Suche funktioniert immer noch nicht – pee2pee
Erhalten Sie irgendwelche Fehler? Hast du die Protokolle überprüft? – Difster