在阵列PHP Accesing阵列(Accesing Array in an array PHP)

2019-10-24 04:37发布

我有3列,其中我有第二列是在php.The第二列的阵列,其是一个数组可以具有2-6行的阵列。

我把数据数组中与主要与下面的代码

$data_array = array(
                  'name' =>$name, 
                  'category_name'=>$category_name,
                  'url'=>$url

);

在上述$ data_array中的第二列$ CATEGORY_NAME是具有如下面的数据数组

$category_name = array("India", "USA", "UK");

我想呼应以下格式的数据,并最终将其添加MySQL数据库

'Jim'
'India'
'www.google.com'

'Jim'
'USA'
'www.google.com'

'Jim'
'UK'
'www.google.com'

'John'
'India'
'www.yahoo.com'

'John'
'USA'
'www.yahoo.com'

'John'
'UK'
'www.yahoo.com'   

如果发现在第一和第三行相同保持并根据该CATEGORY_NAME阵列中的数据中的第二行改变

我尝试使用下面的代码来实现这一点,但我没有得到任何输出

for($i=0;$i<count($NPR);$i++){

for($j=0;$j<count($NPR[$i]['category_name'][j]);$j++){

echo "'".$NPR[$i]['name']."'<br>";
echo "'".$NPR[$i]['category_name'][j]."'<br>";
echo "'".$NPR[$i]['url']."'<br>";
}
}

Answer 1:

它应该是count($NPR[$i]['category_name'])你增加了一个不必要的[j]在本月底。

但是,如果你使用这一切会更容易foreach

foreach ($NPR as $item) {
    foreach ($item['category_name'] AS $cat) {
        echo "'{$item['name']}'<br>";
        echo "'$cat'<br>";
        echo "'{$item['url']}'<br>";
    }
}

请确保你已经当你在调试代码启用错误报告。 [j]应该产生一个警告。



文章来源: Accesing Array in an array PHP
标签: php mysql arrays