2010-05-31 8 views
6

I zwei ArraysArithmetische Operationen in Arrays mit PHP

$data1 = array() 
$data1 = array('10','22','30') 

und auch eine andere Anordnung trägt

$data2 = array() 
$data2 = array('2','11','3'); 

I brauchen diese zwei Arrays (dh $ data1/$ DATA2) und Speicher aufzuteilen Wert auf $ data3 []. ich brauche, um es als

$data3[] = array('5','2','10') 

folgt Wenn jemand eine einfache Möglichkeit, weiß, dies zu tun, eine große Hilfe sein würde. Dank

Antwort

8

Sie können mit einer einfachen foreach-Anweisung tun:

$data1 = array('10','22','30') 
$data2 = array('2','11','3'); 
$data3 = array(); 

foreach($data1 as $key => $value) { 
    $data3[$key] = $value/$data2[$key]; 
} 

Alternativ können Sie array_map verwenden:

function divide($a, $b) { 
    return $a/$b; 
} 

$data3 = array_map("divide", $data1, $data2); 

Und wie von PHP 5.3 Sie können sogar eine Lambda-Funktion nutzen zu komprimieren das zu einer Zeile:

$data3 = array_map(function($a, $b) { return $a/$b; }, $data1, $data2); 
+0

Vielen Dank für Ihre Antwort.Es funktioniert s perfekt – abhis

Verwandte Themen