Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 是否将数据从mysql导出到文本文件?_Php_Mysql - Fatal编程技术网

Php 是否将数据从mysql导出到文本文件?

Php 是否将数据从mysql导出到文本文件?,php,mysql,Php,Mysql,我正在尝试将一些数据从mysql表导出到文本文件中 但是,我只在文本文件中写入了一些,,而没有成员表中的实际数据 我正在使用下面的代码: <?php $fh = fopen('email-data.txt', 'w'); include "../config/connect.php"; /* insert field values into data.txt */ $sql = "SELECT * FROM members"; $query =

我正在尝试将一些数据从mysql表导出到文本文件中

但是,我只在文本文件中写入了一些
,而没有
成员表中的实际数据

我正在使用下面的代码:

<?php
    $fh = fopen('email-data.txt', 'w');
    include "../config/connect.php";

    /* insert field values into data.txt */

    $sql = "SELECT * FROM members";
    $query = mysqli_query($db_conx, $sql);   
    while($row = mysqli_fetch_array($query, MYSQLI_ASSOC)){           
        $num = mysqli_num_fields($query) ;    
        $last = $num - 1;
        for($i = 0; $i < $num; $i++) {            
            fwrite($fh, $row[$i]);                       
            if ($i != $last) {
                fwrite($fh, ",");
            }
        }                                                                 
        fwrite($fh, "\n");
    }
    fclose($fh);
?>


有人能帮我解决这个问题吗?

像这样的吗?您将收到一个无数字索引的assoc数组

<?php
$fh = fopen('email-data.txt', 'w');
include "../config/connect.php";

/* insert field values into data.txt */

$sql = "SELECT * FROM members";
$query = mysqli_query($db_conx, $sql);   
while($row = mysqli_fetch_array($query, MYSQLI_ASSOC)){           
    //$num = mysqli_num_fields($query) ;    
    //$last = $num - 1;
    //for($i = 0; $i < $num; $i++) {            
    $last = sizeof($row)-1;
    $i = 0;
    foreach($row as $field) {
        fwrite($fh, $field);                       
        if ($i != $last) {
            fwrite($fh, ",");
        }
        $i++;
    }                                                                 
    fwrite($fh, "\n");
}
fclose($fh);
?>

更改
mysqli\u fetch\u array()函数的第二个参数


While循环应该类似于
While($row=mysqli\u fetch\u数组($query,mysqli\u NUM)){…}
mysqli\u ASSOC
更改为
mysqli\u NUM


您正在使用
数字
获取行,但使用辅助数组

为什么不将要写入的文本存储在变量中,并在末尾写入?只有1个
fwrite
,以后更容易调试和修改,因为您使用的是
MYSQLI_ASSOC
,应该是
MYSQLI_NUM
@MuhammadHaseebKhan,谢谢你,伙计。这就成功了。