Die PHP documentation eindeutig festPHP array_diff Fehler?
Vergleicht array1 gegen einen oder mehrere andere Arrays und gibt die Werte in array1, die in irgendeiner der anderen Arrays nicht vorhanden sind.
Dies scheint nicht ganz der Fall zu sein. Nehmen Sie das folgende Beispiel
$a = array(1,2,3,4);
$b = array(3,4,5);
echo "b FROM a = ";
echo json_encode(array_diff($a,$b));
echo "<br>a FROM b = ";
echo json_encode(array_diff($b,$a));
, die in einem Fall und eine assoziative Array in dem anderen
b FROM a = [1,2]
a FROM b = {"2":5}
das heißt einer einfachen Anordnung zurückgibt. Leicht zu beheben - ich sorge mich nur um die Werte, so kann ich einfach eine array_values(array_diff
machen. Es stört mich jedoch, dass die Dokumentation über diesen Unterschied hinweggeht. Vielleicht kann jemand hier mehr Licht auf das werfen, was vor sich geht?
Tipp von 0, so dass sie in der json gespeichert sind
Wenn Sie keine Schlüssel Assoziativität beibehalten möchten, verwenden Sie
die Schlüssel zurück: verwenden 'print_r'/'var_dump' zum Debuggen von PHP v alues. Die Einführung einer ganzen 'anderen Technologie (JSON) in den Mix verkompliziert nur die Dinge ... – deceze
Guter Punkt - Ich benutze json_encode oft ganz einfach, weil die Ausgabe kompakter ist. – DroidOS