我有點被卡住了。 我想爲產品變型樣訂做網址:將數組作爲URL參數傳遞給組合
&brand=6&color=11,12,etc
所以,我怎麼能陣列的按鍵組合成一個串像上面
而且如果你可以給我建議另一種方式來達到預期結果。 非常感謝!
我有點被卡住了。 我想爲產品變型樣訂做網址:將數組作爲URL參數傳遞給組合
&brand=6&color=11,12,etc
所以,我怎麼能陣列的按鍵組合成一個串像上面
而且如果你可以給我建議另一種方式來達到預期結果。 非常感謝!
您首先必須將「品牌」的值與「顏色」的值相結合。之後,可以輸出在一起:
<?php
$columns = [
'brand' => [
['b1A', 'b1B'],
['b2A', 'b2B'],
],
'color' => [
['c1A', 'c1B'],
['c2A', 'c2B'],
],
];
$data = [];
foreach ($columns as $title => $rows) {
foreach ($rows as $id => $values) {
if (!isset($data[$id])) {
$data[$id] = [];
}
$data[$id][$title] = $values;
}
}
foreach ($data as $row) {
$output = '';
foreach ($row as $key => $values) {
$output .= '&' . $key . '=' . implode(',', $values);
}
echo $output . '<br/>' . PHP_EOL;
}
Hello @ckappelhoff,謝謝你的回答。你可以檢查我的帖子,我只是用我的完整代碼進行編輯。 –
<?php
$filters = [
"brand" => [
1 => "Adidas",
2 => "Puma"
],
"color" => [
1 => "White",
2 => "Blue",
3 => "Red",
4 => "Yellow"
]
];
foreach($filters['brand'] as $key => $val){
foreach($filters['color'] as $k => $v){
echo "brand=$key,$val&color=$k,$v" . PHP_EOL;
echo "brand=$val&color=$v" . PHP_EOL;
}
}
輸出
brand=1,Adidas&color=1,White
brand=Adidas&color=White
...
實施例2;
foreach($filters['brand'] as $key => $val){
echo "&brand=$key,$val&color=" . implode(',',$filters['color']) . PHP_EOL;
}
&brand=1,Adidas&color=White,Blue,Red,Yellow
&brand=2,Puma&color=White,Blue,Red,Yellow
你能解釋一下邏輯嗎? – C2486
另外,你可以編輯問題,並以['var_export'](http://php.net/manual/en/function.var-export.php)返回的形式顯示你的輸入數組。這樣,人們可以很容易地複製和粘貼它,以創建一個工作測試示例的基礎。 – CBroe
我稍後會編輯更具體的 –