Хорошо, давайте посмотрим, как мы можем это сделать. Я просто сосредоточусь на печати соответствующих заголовков и отображении отформатированных результатов. Итак, в этом случае мы будем использовать fprintf , чтобы напечатать какой-нибудь необычный отформатированный текст в нашем файле здесь. Итак, вот в основном, как это сделать:
id || title || keyword
Во-первых, нам нужно сделать ширину для этих полей, чтобы все хорошо отображалось. Мы установим ширину 10 для каждого:
fprintf($fh, "%-10s || %-10s || %-10s\n", "id", "title", "keyword");
То, что делает %-10s
, говорит нам, что нам нужна строка, отформатированная с шириной 10 символов, с пробелами, используемыми для заполнения, если длины недостаточно. Вы можете настроить 10 на любую ширину, которую хотите, чтобы получить лучший результат. В результате получается что-то вроде этого:
id || title || keyword
Затем мы распечатываем наш разделитель, который я немного подправил, пока он не получится таким же:
fprintf($fh, "===================================\n");
Затем мы проходим цикл и выводим наши значения:
while ($row = mysql_fetch_assoc($result)) {
fwrite($fh, "%-10s || %-10s || %-10s\n" $row['card_id'], $row['title'], $row['description']);
}
Что даст нам что-то вроде этого:
id || title || keyword
===================================
2 || bob || jones
2 || bob || jones
2 || bob || jones
2 || bob || jones
И это все! Вот полный код для справки:
<?php
// Make a MySQL Connection
mysql_connect("mysql4.host.net", "user", "pass") or die(mysql_error());
mysql_select_db("amyadele_test") or die(mysql_error());
// Query the database for data
$query = "SELECT card_id,title,description FROM cards";
$result = mysql_query($query);
// Open file for writing
$myFile = "test.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
// Loop through returned data and write (append) directly to file
fprintf($fh, "%-10s || %-10s || %-10s\n", "id", "title", "keyword");
fprintf($fh, "===================================\n");
while ($row = mysql_fetch_assoc($result)) {
fprintf($fh, "%-10s || %-10s || %-10s\n", $row['card_id'], $row['title'], $row['description']);
}
// Close out the file
fclose($fh);
?>