【问题标题】:How to get specified column into dynamic variables from array variables PHP如何从数组变量PHP中将指定的列转换为动态变量
【发布时间】:2019-01-24 01:38:47
【问题描述】:

我在 MYSQL 中有一个名为 guest 的表。 guest 表中有 3 列 GuestIdNamePhone。我想从guest 表中选择所有记录并将其放入数组变量中,然后我只想使用(for)循环从数组变量中获取电话值。我尝试使用 (for) 循环,然后在我使用的循环内:

$phone = $row[phone]; 

但我得到的结果只是第一条记录的价值电话。如何使电话变量在每个循环中从每个记录中获取电话值?

谢谢。

【问题讨论】:

  • 在循环的每次迭代中,您都在替换 $phone 变量。如果要保留每条记录,则需要使用数组。
  • 这取决于你打算用 $phone 变量做什么。请贴出相关代码。
  • @Nimeshka Srimal,是的,我希望在循环的每次迭代中,电话变量将替换为下一条记录中的其他电话变量。我试过使用,但我只在第一条记录上得到了电话值的结果。
  • 是的,它肯定会被替换。你打算用 $phone 变量做什么?
  • 首先你声明了数组($phone = array()),然后在循环中将手机存储到数组变量($phone[]=$row[phone];)中&你应该在问题中添加你的代码

标签: php mysql arrays loops


【解决方案1】:

使用

$phones = array_column($arr, 'Phone');

查看http://php.net/manual/en/function.array-column.php

【讨论】:

    【解决方案2】:
    <?php
    $servername = "localhost";
    $username = "username";
    $password = "password";
    $dbname = "myDB";
    
    
    $conn = new mysqli($servername, $username, $password, $dbname);
    
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 
    
    $sql = "SELECT GuestId, Name, Phone FROM guest";
    $result = $conn->query($sql);
    
    if ($result->num_rows > 0) {
        // output data of each row
        while($row = $result->fetch_assoc()) {
            echo "Phone: " . $row["Phone"]. "<br>";
        }
    } else {
        echo "0 results";
    }
    $conn->close();
    ?>
    

    【讨论】:

      猜你喜欢
      • 2010-12-12
      • 1970-01-01
      • 2021-09-08
      • 2011-08-05
      • 1970-01-01
      • 2014-07-27
      • 2021-03-16
      • 2013-04-25
      相关资源
      最近更新 更多