Php 使用for each循环显示三维数组
这是我的三维数组。我想为设计师、开发人员、工程师等职业展示我的阵列。这意味着我职业的最后一个元素的终结,它将以句号而不是逗号内爆。在我的代码中,它可以内爆逗号。如何检查该数组的最后一个元素?我使用了end函数,但它不起作用Php 使用for each循环显示三维数组,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,这是我的三维数组。我想为设计师、开发人员、工程师等职业展示我的阵列。这意味着我职业的最后一个元素的终结,它将以句号而不是逗号内爆。在我的代码中,它可以内爆逗号。如何检查该数组的最后一个元素?我使用了end函数,但它不起作用 $friends=[ "John"=>[ 'Location'=>'Dhaka', 'Age'=>30, 'Profession'=>['Designer','Developer','Engi
$friends=[
"John"=>[
'Location'=>'Dhaka',
'Age'=>30,
'Profession'=>['Designer','Developer','Engineer']
],
"Bill"=>[
'Location'=>'CTG',
'Age'=>29,
'Profession'=>['Programmer','Engineer','Teacher']
],
"Mark"=>[
'Location'=>'Barishal',
'Age'=>33,
'Profession'=>['Network','Hardware','Engineer']
]
];
foreach ($friends as $Name=> $value) {
echo "Name : $Name </br>";
foreach ($value as $info => $info_value) {
if (is_array($info_value)) {
echo $info.":";
foreach ($info_value as $key=>$profession) {
echo $profession.",";
}
}else{
echo "{$info}:{$info_value}</br>";
}
}
}
$friends=[
“约翰”=>[
“地点”=>“达卡”,
“年龄”=>30岁,
“专业”=>[“设计师”、“开发者”、“工程师”]
],
“比尔”=>[
'Location'=>'CTG',
“年龄”=>29岁,
“职业”=>[“程序员”、“工程师”、“教师”]
],
“标记”=>[
“位置”=>“巴里沙尔”,
“年龄”=>33岁,
“专业”=>[“网络”、“硬件”、“工程师”]
]
];
foreach($friends as$Name=>$value){
echo“Name:$Name”;
foreach($info=>$info\u值){
if(is_数组($info_值)){
echo$info.“:”;
foreach($info\u值为$key=>$profession){
回声$职业。“,”;
}
}否则{
回声“{$info}:{$info_value}”;
}
}
}
试试这个:
foreach ($friends as $Name => $value) {
echo "Name : $Name </br>";
foreach ($value as $info => $info_value) {
if (is_array($info_value))
echo "$info : ". implode(', ', $info_value) . '.</br>';
else
echo "$info : $info_value </br>";
}
echo '</br>';
}
如果你想要这些输出,请考虑下面的代码
<?php
foreach ($friends as $Name => $value) {
echo "Name : $Name </br>";
foreach ($value as $info => $info_value) {
if (is_array($info_value)) {
echo $info . ":";
$profession_arr = array();
foreach ($info_value as $key => $profession) {
$profession_arr[] = $profession;
}
$prof_str = implode(",", $profession_arr);
echo $prof_str . "</br>";
} else {
echo "{$info}:{$info_value}</br>";
}
}
echo "</br>";
}
您的代码不符合我的要求。我说过元素的结尾将内爆逗号。但在元素的结尾连接一个点,它符合我的要求。如echo“$info:”。内爆(“,”,$info_值)。“”';顺便说一句,thnx:)因为一个点,我的答案并没有解决你的问题:(太糟糕了me@hmamun如果这回答了你的问题,请接受:)谢谢,没关系:)这真的很重要。请给出一些输出示例,说明你希望输出的外观。否则人们很可能会想念你;)我在部分的顶部解释了它以及输出演示,我并没有看到格式化的示例输出。在回答中也可以看出人们对你想要什么有不同的想法。所以下一次展示一些东西,比如Ceeee的样本输出,人们会对你想要的确切布局有一个清晰的想法,
output:
Name : John
Location:Dhaka
Age:30
Profession:Designer,Developer,Engineer
Name : Bill
Location:CTG
Age:29
Profession:Programmer,Engineer,Teacher
Name : Mark
Location:Barishal
Age:33
Profession:Network,Hardware,Engineer
<?php
foreach ($friends as $Name => $value) {
echo "Name : $Name </br>";
foreach ($value as $info => $info_value) {
if (is_array($info_value)) {
echo $info . ":";
$profession_arr = array();
foreach ($info_value as $key => $profession) {
$profession_arr[] = $profession;
}
$prof_str = implode(",", $profession_arr);
echo $prof_str . "</br>";
} else {
echo "{$info}:{$info_value}</br>";
}
}
echo "</br>";
}