2015-12-14 160 views
1

如何使用笨鑑於其輸出......在這種格式串連2陣列爆炸

brocolli 1/2 kilo 

soy sauce 1 bottle 

控制器:

$ingredient_name =implode(",",$_POST["mytext"]); //contains ex. [brocolli,soy sauce] 
$ingredient_value = implode(",", $_POST["mytext2"]); //contains ex. [1/2 kilo, 1 bottle]... 
+0

你有一個數組或字符串? – chris85

+0

$成分名和$成分_價值將成爲一個字符串數組..我想我會用爆炸,但我不能讓它像一個名稱=>價值對 – Jonas

回答

1

你還是使用爆炸您所展示的例子在發佈的字段值上。然後你可以使用array_combine:

$ingredient_name = explode(",",$_POST["mytext"]); 
$ingredient_value = explode(",", $_POST["mytext2"]); 
$result = array_combine($ingredient_name, $ingredient_value); 

現在$ result是一個包含你的鍵和它們各自值的單個數組。

+0

我如何提取視圖? – Jonas

+0

反正謝謝santy – Jonas

+0

foreach($ result爲$ key => $ value){ – Santy

0

根據您提供的信息,我假設第一個數組包含成分列表,第二個數組包含成分量,並且您希望將數組放入鍵/值對中。

這應該做的伎倆:

$ingredients = []; 
$ingredient_names = explode(",", $_POST['mytext']); 
$ingredient_values = explode(",", $_POST['mytext2']); 

// combine values into a single array 
foreach ($ingredient_names as $i => $name) { 
    $ingredients[$name] = $ingredient_values[$i]; 
} 

// output the ingredients however you want 
echo "Ingredients:<br>"; 
foreach ($ingredients as $name => $amount) { 
    echo "{$name} {$amount}<br>"; 
} 
+0

這個作品太謝謝了 – Jonas