php - 将MySQL数据放入数组中

标签 php mysql arrays mysqli store

我已经尝试了几天从 MySQL 列获取所有数据并将其放入数组中,格式如下:

$aSpam= array
    ( '.info'=> 'i'
    , 'anal'=> 'i'
    , 'anus'=> 'i'
    , 'arse'=> 'i'
)

我已经成功地以正确的格式回显了它,如下所示:http://www.yourgrumble.com/phpbbforum/getSpam.php

使用以下 PHP 代码:

<?php
$servername = "localhost";
$username = "username";
$password = "pass";
$dbname = "db";

// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

$sql = "SELECT `SpamWord` FROM spamWords";
                            $result = $conn->query($sql);

                            if ($result->num_rows > 0) {
                                // output data of each row
                                $counter = 0;
                                while($row = $result->fetch_assoc()) {
                                    if($counter){
                                        echo ", '" . $row["SpamWord"]. "'=> 'i'";
                                        $counter++;
                                    } else {
                                        echo "'" . $row["SpamWord"]. "'=> 'i'";
                                        $counter++;
                                    }
                                }
                            } else {
                                echo "Error!";
                            }
                            $conn->close();
                        ?>

我已经阅读并尝试了在网络和 stackoverflow 上找到的 10 多个解决方案,但是它们都不起作用。我真的很绝望,如果没有你们的帮助我就无法度过这一切。

编辑 例如,我尝试使用此解决方案,但它不起作用:

while ($row = mysql_fetch_array($result)) 
{
    $new_array[$row['id']]['SpamWord'] = $row['SpamWord'];
}

foreach($new_array as $array)
{       
   echo $array['SpamWord'].'<br />';
}

先谢谢大家了, 丹尼斯·赛多夫

最佳答案

尝试如下:-

$sql = "SELECT `SpamWord` FROM spamWords";
$result = mysqli_query($conn ,$sql) or die(mysqli_error($conn));
$resultArray = array(); // create an array
   if ($result->num_rows > 0) {
         // output data of each row
        while($row = mysqli_fetch_assoc($result)) {

                $resultArray[$row["SpamWord"]]  = 'i'; // assing value

        }
    } else {
        echo "Error!";
    }

echo "<pre/>";print_r($resultArray); // print array
    $conn->close();

注意:在这里您将获得包含来自数据库的所有 SpamWord 值的原始数组。谢谢

关于php - 将MySQL数据放入数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30686438/

相关文章:

java - JTextPane 将值从数组打印到 Java Swing 应用程序时出现问题

php - 是否可以让 Facebook session 保持事件状态?

php - 添加 Hook 以删除 woocommerce 购物车中的项目

mysql - 而不是空白需要特殊字符作为连字符

php - 将 laravel 文件迁移到 xampp 服务器时出错

c - 如何将 double 组传递给 C 中的函数?

php - Laravel 8 - 在线支付 przelewy24 网关实现

PHP file_get_contents 在一台服务器上工作,但在上出现授权错误

mysql - Scala 和 MySQL JDBC 驱动程序

c - 从 struct can_frame 的选项卡中检索十六进制 argv[]