как записать результирующий набор из select в текстовый файл?

#php #mysql

#php #mysql

Вопрос:

у меня есть следующее:

 $sql5 = "select *,count(*) from rc_language_type_assoc_table group by language_type_id";
$result5 = mysql_query($sql5);                           //not correct
$count5 = mysql_num_rows($result5);                      //not correct

$myFile = "/home/rainbowcode/StatsFile.txt";
$fh = fopen($myFile, 'w') or die("can't open file");

fwrite($fh, $sql5."n");

$myFile = "/home/rainbowcode/StatsFile.txt";
$fh = fopen($myFile, 'w') or die("can't open file");

fwrite($fh, $result5."n");
  

вышесказанное — это не то, что я хочу, я хочу, чтобы фактический результирующий набор select был напечатан в моем файле STATS
как я могу этого добиться, пожалуйста???

Комментарии:

1. Что означает ваше «неверно»?

2. while ($row = self::fetch_array($result5)) и записать содержимое массива строк

3. пожалуйста, не добавляйте псевдотеги типа ‘[решаемая]’ в заголовок вашего вопроса. Если один из ответов помог вам решить проблему, отметьте его принятым. Если ни один из ответов не помог, но вы решили проблему самостоятельно, опубликуйте здесь свой ответ и пометьте его как принятый.

Ответ №1:

не самое эффективное решение, но должно дать вам представление о том, как выполнить эту работу

 $sql5 = "select *,count(*) from rc_language_type_assoc_table group by language_type_id";
$result5 = mysql_query($sql5);                           //not correct
$count5 = mysql_num_rows($result5);                      //not correct

$myFile = "/home/rainbowcode/StatsFile.txt";
$fh = fopen($myFile, 'w') or die("can't open file");

fwrite($fh, $sql5."n");

while ($row = mysql_fetch_assoc($result5) {
    foreach ($row as $key => $val) {
        fwrite($fh, "$key=>$val ");
    }

    fwrite($fh, "n");
}

fclose($fh);
  

Комментарии:

1. В зависимости от потребностей, он может захотеть использовать var_export or fputcsv вместо fwrite .

Ответ №2:

Вам нужно извлечь каждую строку, а затем записать значения для этой строки в файл.