PHP For Loop Printing一个数组

0 php arrays loops

这似乎是一个非常简单的问题,但它让我感到困惑大声笑.我正在尝试打印从数据库收到的行.我想将行存储在数组中,然后使用for循环打印它们.我知道查询有效,但是当我尝试打印数组元素时,它只打印单词数组.我厌倦了使用foreach循环和简单的for循环.如果有人能指出我正确的方向将是一个救生员.

打印Php代码

<?php

    $type = "FREE";
    $free = getTerms($type);
    echo "<p>";
    for($j = 0; $j < count($free); $j++)
    {
    echo "start".$free[$j]."end";
    }
    echo "</p>";                        
?>
Run Code Online (Sandbox Code Playgroud)

从数据库中获取行

function getTerms($type)
{
    $terms = array();
    $connection = mysql_open(); 
    $query = "select terms from terms_and_con where accountType='$type' && currentTerms='YES'";
    $results = mysql_query($query, $connection) or show_error("signUp.php", "", "");

    while($row = mysql_fetch_array($results))
    {
       $terms[] = $row;
    }
    mysql_close($connection) or show_error("signUp.php", "", "");
    return $terms;
}
Run Code Online (Sandbox Code Playgroud)

Phi*_*hil 5

$free数组中的每个条目本身就是一个数组(from $row).

尝试

echo 'start', $free[$j]['terms'], 'end';
Run Code Online (Sandbox Code Playgroud)

或者,您可能会发现一个foreach语义更合适的循环

foreach ($free as $row) {
    echo 'start', $row['terms'], 'end';
}
Run Code Online (Sandbox Code Playgroud)

编辑:我建议使用mysql_fetch_assoc()而不是mysql_fetch_array()如果你只是使用关联条目$row.