php如何在声明动态数组时使用数组元素(我不知道如何更好地使用它)

php如何在声明动态数组时使用数组元素(我不知道如何更好地使用它),php,multidimensional-array,Php,Multidimensional Array,我已将SQL数据加载到一组数组中。我想用这些数组创建一个大的多维数组 for ($h=0; $h<=count($siteName); $h++){ for ($x=0; $x<=count($pluginNames); $x++) { for ($y=0; $y<=count($wpvData); $y++) { $plugData = array($siteName[$h]=>array($pl

我已将SQL数据加载到一组数组中。我想用这些数组创建一个大的多维数组

for ($h=0; $h<=count($siteName); $h++){

    for ($x=0; $x<=count($pluginNames); $x++)
    {
        for ($y=0; $y<=count($wpvData); $y++)
        {
            $plugData = array($siteName[$h]=>array($pluginNames=>array($pluginNames[$x],$vData[$y],$wpvData[$y],$row[$y])));
        } 
    } 
}
第124行=$plugData数组行

这可能吗

有没有更好的方法一起做这一切


我的目标是在多维数组中存储一组与网站相关的数据,以便在html div中显示它。基本上,我有一个wordpress网站,我想通过html用一个漂亮的GUI管理插件。

你想要的可能是这样的:

$plugData = array();
foreach ($siteName as $site) {
    $plugData[$site] = array();
    foreach ($pluginNames as $plugin)
        $plugData[$site][$plugin] = array();
        foreach ($wpvData as $y => $wpv) {
            $plugData[$site][$plugin][] = array(
                'plugin' => $plugin,
                'vdata' => $vdata[$y],
                'wpv' => $wpv,
                'row' => $row[$y]);
        }
    }
}

请注意,将元素添加到数组的语法是
$arrayname[]=
$arrayname=
只是简单地替换整个数组,它不是您通常希望在循环中使用的东西。

您所说的
数组($pluginNames=>array(…)
是什么意思
$pluginNames
是一个数组,它怎么可能是关联数组中的键?第一条错误消息表示其中一个数组没有元素号0。原始数组是索引数组还是关联数组?也许你应该使用
foreach
而不是
for
。pluginNames保存所有插件的名称。。。。我希望每个插件的名称都有自己的数据集。我不会用索引处的名称作为键吗?我所做的可能是非常错误的,这就是我来这里寻求帮助的原因。我尝试了这个方法,结果是:警告:为/Applications/MAMP/htdocs/bjandjnas.php中的foreach()提供的参数无效,位于第121行var_dump====array(0){}这是foreach的开始。我把它换成了另一个变量,它起了作用。有三个前肢疼痛,我想知道是哪一个。无论如何,该错误意味着
foreach
中的变量实际上不是数组。变量
$siteName
是单数的--是一个站点名称还是一个站点名称数组?也许还有另一个变量
$siteNames
应该循环使用?在看不到您的程序的更多内容的情况下,我不得不基于原始代码进行假设,即使它已被破坏。这是foreach的第一个循环。我将siteName改为tableName,这是我用来保存相同数据的另一个变量,siteName是在while循环中创建的,它可能在执行后被销毁。
$plugData = array();
foreach ($siteName as $site) {
    $plugData[$site] = array();
    foreach ($pluginNames as $plugin)
        $plugData[$site][$plugin] = array();
        foreach ($wpvData as $y => $wpv) {
            $plugData[$site][$plugin][] = array(
                'plugin' => $plugin,
                'vdata' => $vdata[$y],
                'wpv' => $wpv,
                'row' => $row[$y]);
        }
    }
}