php - 访问数组 PHP 中的数组

标签 php mysql arrays

我有一个 3 列的数组,其中第二列是 php 中的一个数组。第二列是一个数组,可以有 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>";
}
}

最佳答案

它应该是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] 应该会产生警告。

关于php - 访问数组 PHP 中的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31634488/

相关文章:

mysql - 为什么我无法远程访问 Amazon RDS 上的 MySQL?

arrays - 如何在线性时间内按升序查找 3 个数字并在数组中增加索引

php - 如何使用可点击链接 ID 分组连接行

php - 我如何指定 Zend Framework 使用与 Action 默认文件不同的 View 文件?

php - 无法从 mysql 选择最新且不相同的数据

Javascript:生成随机数并存储在多维数组中

相当于 PHP $array[$i][] 的 JavaScript

php - 脚本速度与内存使用

php - 使用 mysql 和 php 从 HTML 表中删除一条记录

MySQL 查询需要更加高效