PHP-将mysql结果数组转换为局部变量数组?

PHP-将mysql结果数组转换为局部变量数组?,php,arrays,Php,Arrays,我有以下代码: $catsQuery = " SELECT id, category FROM categories ORDER BY category "; $catsSql = mysqli_query($link, $catsQuery); $cats = array(); mysqli_data_seek($catsSql, 0); while($rowCats = mysqli_fetch_assoc($catsSql)) {

我有以下代码:

$catsQuery = "
        SELECT id, category
        FROM categories
        ORDER BY category
";
$catsSql = mysqli_query($link, $catsQuery);

$cats = array();

mysqli_data_seek($catsSql, 0);
while($rowCats = mysqli_fetch_assoc($catsSql))
{
    $cats[$rowCats['id']]['catName'] = $rowCats['category'];
}

foreach ($cats as $catKey => $cat['$catName'])
{
    $pageContent .= "<p>$catKey | $catName</p>
    ";
}

在构建阵列时,必须按如下方式执行foreach循环:

foreach ($cats as $catId => $cat)
{
    $pageContent .= "<p>$catKey | ".$cat['catName']."</p>";
}

在构建阵列时,必须按如下方式执行foreach循环:

foreach ($cats as $catId => $cat)
{
    $pageContent .= "<p>$catKey | ".$cat['catName']."</p>";
}

你的代码看起来不错。在while循环之后,您是否在$cats数组上尝试了var_转储?我怀疑是这条线给你带来了问题

foreach ($cats as $catKey => $cat['$catName'])
你也许应该把它改一下

foreach ($cats as $catKey => $catDetails)
{
    $catName = $catDetails['catName'];
    $pageContent .= "<p>$catKey | $catName</p>";
}
foreach($cats作为$catKey=>$catDetails)
{
$catName=$catDetails['catName'];
$pageContent.=“$catKey |$catName

”; }
您的代码看起来正常。在while循环之后,您是否在$cats数组上尝试了var_转储?我怀疑是这条线给你带来了问题

foreach ($cats as $catKey => $cat['$catName'])
你也许应该把它改一下

foreach ($cats as $catKey => $catDetails)
{
    $catName = $catDetails['catName'];
    $pageContent .= "<p>$catKey | $catName</p>";
}
foreach($cats作为$catKey=>$catDetails)
{
$catName=$catDetails['catName'];
$pageContent.=“$catKey |$catName

”; }
感谢您的输入,出于兴趣,php允许您这样做:
$pageContent.=“$catKey{$cat['catName']}

是的,这是可能的,但我不喜欢这样,它变得如此不可读,对我来说有太多的“黑魔法:)我保持我的代码干净和可预测请查看添加到我的op中的代码作为您的答案:)骨架在那里,我现在可以处理它了!非常感谢你!!感谢您的输入,出于兴趣,php允许您这样做:
$pageContent.=“$catKey{$cat['catName]}

是的,这是可能的,但我不喜欢这样,它变得如此不可读,对我来说有太多的“黑魔法:)我保持我的代码干净和可预测请查看添加到我的op中的代码作为您的答案:)骨架在那里,我现在可以处理它了!非常感谢你!!