从php中的列表关联数组中检索信息

时间:2014-11-18 14:31:46

标签: php arrays

HY,

我如何从关联数组中检索信息,如php中的列表。

var_dump显示如下内容:

array(2) { [1]=> string(1) "1" 
           [2]=> string(1) "2" } 
array(2) { [1]=> string(15) "gica_craioveanu" 
           [2]=> string(14) "alexandra_minu" } 
array(2) { [0]=> string(10) "craiovaMAX" 
           [1]=> string(10) "alexMinu10" }

第一个数组包含id,第二个包含用户名,第三个包含密码。

我的尝试:

    foreach ($row as $i => $id,$user_name,$user_pass) {
        echo "<tr>\n" .
          "  <td>".var_dump($id)."</td>\n".
          "  <td>".var_dump($user_name)."</td>\n".
           "  <td>".var_dump($user_pass)."</td>\n".
          " </tr>\n"
    }

one of php file contains the script to construct the list:

    while($row = mysqli_fetch_row($result))
{
/*$id[]=$row['user_id'];
$user_name[]=$row['user_name'];
$user_pass[]=$row['user_pass'];
$i=$i+1;*/
list($id[$i],$user_name[$i],$user_pass[$i++])=$row;
}
/*for($no=0; $no<$i; $no++){
            echo $row[$i]."/".$row[$i]."/";
}*/
include 'user.html.php';
}
?>

和user.html.php

查看行:

    <?php 
    //   while (list($id, $user_name, $user_pass)= each($row)) {
    foreach($row as $i => $id,$user_name,$user_pass){

    echo " <tr>\n" .
          "  <td>".$id."</td>\n".
          "  <td>".$user_name."</td>\n".
           "  <td>".$user_pass."</td>\n".
          " </tr>\n";

/*echo "<tr>\n" .
          "  <td>".var_dump($id)."</td>\n".
          "  <td>".var_dump($user_name)."</td>\n".
           "  <td>".var_dump($user_pass)."</td>\n".
          " </tr>\n"
          */

          /*for($no=0; $no<$i; $no++){
            echo "<tr>".
            "<td>".$row[$i]."</td>".
            "<td>".$row[$i]."</td>".
            "<td>".$row[$i]."</td>".
            "</tr>";*/
            }
            ?>

3 个答案:

答案 0 :(得分:1)

while($row = mysqli_fetch_row($result)) { 
    list($id[$i],$user_name[$i],$user_pass[$i++])=$row; 
}

...

for($i = 1; $i < count($id) + 1; $i++) {
    echo " <tr>\n" .
         "  <td>".$id[$i]."</td>\n".
         "  <td>".$user_name[$i]."</td>\n".
         "  <td>".$user_pass[($i - 1)]."</td>\n".
         " </tr>\n";
}

答案 1 :(得分:1)

$id = array("1", "2");
$user_name = array("gica_craioveanu", "alexandra_minu");
$user_pass = array("craiovaMAX", "alexMinu10");

我们假设3个数组总是大小相同:

// You make a loop on first array
for ( $i = 0 ; $i < count($id) ; $i++ )
{
    // You use index $i to access to 3 arrays.
    echo 'ID: '.$id[$i].'<br />';
    echo 'Name: '.$user_name[$i].'<br />';
    echo 'Password: '.$user_pass[$i].'<br />';
}

答案 2 :(得分:0)

for($no=1; $no<$i+1; $no++)
          {
            echo "<tr>".
            "<td>".$id[$no]."</td>".
            "<td>".$user_name[$no]."</td>".
            "<td>".$user_pass[($no-1)]."</td>".
            "</tr>";
            }

Typoheads启发