2016-06-07 5 views
0

ich unter zwei Arrays,neue PHP-Array durch das Hinzufügen neuer Schlüssel aus zwei Arrays Werte schaffen

$category = array('available', 'notavailable'); 
$values = array(1, 2); 

Jetzt will ich, wie unten JSON Ausgabe erhalten,

[{category: 'available', value:1}{category: 'notavailable', value:2}] 

ich versucht, mit array_mergearray_combine aber konnte nicht mit den neuen Schlüsselwerte Kategorie und Wert,

erwünschte outlut bekommen Wie kann ich das bekommen?

Danke,

+1

Werfen Sie einen Blick auf 'Array _map() 'um beide Arrays zu der gewünschten Ausgabe zu kombinieren, die Sie dann codieren können. – Rizier123

Antwort

1

Sie array_map verwenden können, wenn Sie Fixtasten haben:

<?php 

$category = array('available', 'notavailable'); 
$values = array(1, 2); 

$array = array_map(function($category, $value) { 
    return ['category' => $category, 'value'=>$value]; 
}, $category, $values); 

echo "<pre>"; 
var_dump(json_encode($array)); 
echo "</pre>"; 

Ausgang:

string(74) "[{"category":"available","value":1},{"category":"notavailable","value":2}]" 
0

Ich glaube, Sie müssen wie folgt vorgehen:

$result = array(); 
for ($i = 0; $i < count($category); $i++) { 
    $result[] = array(
     'category' => $category[$i], 
     'value' => $values[$i] 
    ); 
} 

echo json_encode($result); 
Verwandte Themen