Php 使用for each循环显示三维数组

Php 使用for each循环显示三维数组,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,这是我的三维数组。我想为设计师、开发人员、工程师等职业展示我的阵列。这意味着我职业的最后一个元素的终结,它将以句号而不是逗号内爆。在我的代码中,它可以内爆逗号。如何检查该数组的最后一个元素?我使用了end函数,但它不起作用 $friends=[ "John"=>[ 'Location'=>'Dhaka', 'Age'=>30, 'Profession'=>['Designer','Developer','Engi

这是我的三维数组。我想为设计师、开发人员、工程师等职业展示我的阵列。这意味着我职业的最后一个元素的终结,它将以句号而不是逗号内爆。在我的代码中,它可以内爆逗号。如何检查该数组的最后一个元素?我使用了end函数,但它不起作用

$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>";
}