<?php
$array1 = array(
'[email protected]'=>array('name'=>'username','ip'=>'127.0.0.1'),
'[email protected]'=>array('name'=>'username','ip'=>'127.0.0.1')
);
$array2 = array(
'[email protected]'=>array('name'=>'username','ip'=>'127.0.0.1'),
'[email protected]'=>array('name'=>'username','ip'=>'127.0.0.1')
);
$array3 = array(
'[email protected]'=>array('name'=>'username','ip'=>'127.0.0.1'),
'[email protected]'=>array('name'=>'username','ip'=>'127.0.0.1')
);
$array4 = array(
'[email protected]'=>array('name'=>'username','ip'=>'127.0.0.1'),
'[email protected]'=>array('name'=>'username','ip'=>'127.0.0.1')
);
$final_arr = array();
$final_arr = array_merge($array1,$array2,$array3,$array4);
echo count($final_arr);
?>
Dies ist der Beispielcode in diesem Ich habe 4 Array mit 2 Elementen in jedem Array. und ich verwende Array_merge() -Funktion, um eindeutige E-Mails in allen Array zu erhalten.php Speicherauspuff Problem beim Zählen von eindeutigen E-Mails von mehreren Arrays.
aber auf diese Weise vergrößere ich die Größe der letzten Array-Variablen, bis kein Array mehr in das endgültige Array zusammengeführt wird, aber das gibt mir das richtige Ergebnis, die eindeutigen E-Mails von allen Arrays.
Im Falle, wenn ich 50 Array und Größe jedes Arrays verwenden 50k Elemente haben.
und wenn ich alle Array in einzelne Variable zusammenführen wird dies Speicherauszug Fehler in PHP erstellen, da große variable Größe.
gibt es eine Möglichkeit, einzigartige E-Mails von allen Array durch einige Vergleich zu zählen, um Speicherauspuff Problem zu überwinden.
Und warum müssen Sie Arrays zusammenführen? –
Jedes Array hat eine E-Mail-ID als Schlüssel und mehrere Arrays konnten dieselbe E-Mail-ID wiederholen, um eindeutige E-Mails aus allen Arrays zu zählen, wenn mehrere Arrays nicht denselben Schlüssel wiederholen und einzigartige E-Mails aus der endgültigen Liste zählen können. @ U_mulder –
Wenn Sie zählen müssen einzigartige E-Mails - zählen Sie sie dann. Warum musst du zusammenführen? –