php n数组,n项,循环中循环
我要创建此输出: LG LG#Spain LG#Spain#Paypal LG#Spain#Paypal#Male LG#Spain#Paypal#Female LG#Spain#CCard LG#Spain#CCard#Male LG#Spain#CCard#Female LG#Croatia LG#Croatia#Paypal LG#Croatia#Paypal#Male LG#Croatia#Paypal#Female LG#Croatia#CCard LG#Croatia#CCard#Male LG#Croatia#CCard#Female LG#Czech LG#Czech#Paypal LG#Czech#Paypal#Male LG#Czech#Paypal#Female LG#Czech#CCard LG#Czech#CCard#Male LG#Czech#CCard#Female Sony Sony#Spain Sony#Spain#Paypal Sony#Spain#Paypal#Male Sony#Spain#Paypal#Female Sony#Spain#CCard Sony#Spain#CCard#Male Sony#Spain#CCard#Female Sony#Croatia Sony#Croatia#Paypal Sony#Croatia#Paypal#Male Sony#Croatia#Paypal#Female Sony#Croatia#CCard Sony#Croatia#CCard#Male Sony#Croatia#CCard#Female Sony#Czech Sony#Czech#Paypal Sony#Czech#Paypal#Male Sony#Czech#Paypal#Female Sony#Czech#CCard Sony#Czech#CCard#Male Sony#Czech#CCard#Female LG LG#西班牙 LG#西班牙#贝宝 LG#西班牙#贝宝#男性 LG#西班牙#贝宝#女性 LG#西班牙#CCard LG#西班牙#CCard#男性 LG#西班牙#CCard#女性 克罗地亚 LG#克罗地亚#贝宝 LG#克罗地亚#贝宝#男性 LG#克罗地亚#贝宝#女性 LG#克罗地亚#CCard LG#克罗地亚#CCard#男性 LG#克罗地亚#CCard#女性 LG#捷克 LG#捷克#贝宝 LG#捷克#贝宝#男性 LG#捷克#贝宝#女性 LG#捷克#CCard LG#捷克#CCard#男性 LG#捷克#CCard#女性 索尼 索尼#西班牙 索尼#西班牙#贝宝 索尼#西班牙#贝宝#男 索尼#西班牙#贝宝#女性 索尼#西班牙#CCard 索尼#西班牙#CCard#男 索尼#西班牙#CCard#女性 索尼#克罗地亚 索尼#克罗地亚#贝宝 索尼#克罗地亚#贝宝#男 索尼#克罗地亚#贝宝#女性 索尼#克罗地亚#CCard 索尼#克罗地亚#CCard#男 索尼#克罗地亚#CCard#女 索尼#捷克 索尼#捷克#贝宝 索尼#捷克#贝宝#男 索尼#捷克#贝宝#女性 索尼#捷克#CCard 索尼#捷克#CCard#男 索尼#捷克#CCard#女性 我的代码是:php n数组,n项,循环中循环,php,arrays,string,loops,Php,Arrays,String,Loops,我要创建此输出: LG LG#Spain LG#Spain#Paypal LG#Spain#Paypal#Male LG#Spain#Paypal#Female LG#Spain#CCard LG#Spain#CCard#Male LG#Spain#CCard#Female LG#Croatia LG#Croatia#Paypal LG#Croatia#Paypal#Male LG#Croatia#Paypal#Female LG#Croatia#CCard LG#Croatia#CCard#M
<?php
$delimiter = '#';
$keys = ['Brand','Country','Method','Gender'];
$arr[$keys[0]] = ['LG','Sony'];
$arr[$keys[1]] = ['Spain','Croatia','Czech'];
$arr[$keys[2]] = ['Paypal','CCard'];
$arr[$keys[3]] = ['Male','Female'];
$sizeofdims = sizeof($keys);
$main_key = $keys[0];
echo '<pre>';
foreach ($arr[$main_key] as $main_item)
{
$key_handle = $main_item;
echo "$key_handle\n";
foreach ($keys as $i=>$k)
{
if ($k == $main_key)
{
continue;
}
foreach ($arr[$k] as $item)
{
$key_current = $key_handle;
$key_handle .= $delimiter.$item;
echo "$key_handle\n";
if ($i+1 == $sizeofdims)
{
$key_handle = $key_current;
}
else
{
break;
}
}
}
}
echo '</pre>';
为了开个玩笑,我将给出一个最简单的解决方案:
$array = array(
'LG' => array(
'Neverland' => array('Pirate gold', 'Magic coins', 'Fairy dust'), ), )
'Fantasia' => array('Gems', 'Dragon Heartstring', 'Old underwear'), ),
),
'Sony' => array(
'Neverland' => array('Pirate gold', 'Magic coins', 'Fairy dust'), ), )
'Fantasia' => array('Gems', 'Dragon Heartstring', 'Old underwear'), ),
),
);
但是下次你自己试试。你的阵列更难使用。我建议将其重新组织为多维数组
foreach ($array as $brand => $countries) {
echo $brand."<br />";
foreach ($countries as $country => $paymentMethods) {
echo $brand."#".$country."<br />";
foreach ($paymentMethods as $paymentMethod) {
echo $brand."#".$country."#".$paymentMethod."<br />";
}
}
}
现在您可以执行以下循环
foreach($brand=>$countries的数组){
echo$brand.“
”;
foreach($countries as$country=>$paymentMethods){
echo$brand.#“$country.”
;
foreach($paymentMethods作为$paymentMethod){
echo$brand.。#“$country.。#“$paymentMethod.”
;
}
}
}
你尝试过什么吗?好吧,祝你好运。有问题要问还是…?我们相信你。你可以这样做,除非有问题,否则祝你好运:-)@RivnatNasah是的,我修改了它。。
$array = array(
'LG' => array(
'Neverland' => array('Pirate gold', 'Magic coins', 'Fairy dust'), ), )
'Fantasia' => array('Gems', 'Dragon Heartstring', 'Old underwear'), ),
),
'Sony' => array(
'Neverland' => array('Pirate gold', 'Magic coins', 'Fairy dust'), ), )
'Fantasia' => array('Gems', 'Dragon Heartstring', 'Old underwear'), ),
),
);
foreach ($array as $brand => $countries) {
echo $brand."<br />";
foreach ($countries as $country => $paymentMethods) {
echo $brand."#".$country."<br />";
foreach ($paymentMethods as $paymentMethod) {
echo $brand."#".$country."#".$paymentMethod."<br />";
}
}
}