[英]Writing the results of this PHP script to a text file
我什至不知道這是否可行,所以如果這是一個愚蠢的問題,請隨時將我擊落,但我想不出一種解決方法。
這是我的腳本,該腳本從數據庫中獲取數據並按我希望的方式格式化結果:
$users = get_users('user_login', 'display_name', 'ID');
echo 'users: [ ';
$n = count($users);
foreach ($users as $i => $user) {
echo '{ name: "'.$user->user_login.'"';
echo ' username: "'.$user->display_name.'"';
echo ' image: "'.$user->ID.'" }';
if (($i+1) != $n) echo ', ';
}
echo '] ';
直接運行時基本上會吐出以下內容:
users: [ { name: "007bond" username: "James Bond" image: "830" }, { name: "4Tek" username: "4Tek" image: "787" } ]
但是,我不想在需要時運行此腳本(這會很多),而是想將此腳本的結果寫入文本文件。
這可能嗎?
您可以使用多種方式將文本寫入文件。
1.如果沒有php,只需將腳本輸出重定向到特定文件,如下所示:
# php yourfile.php > result.txt
然后在result.txt中有一個結果。
$users = get_users('user_login', 'display_name', 'ID'); $text = 'users: [ '; $n = count($users); foreach ($users as $i => $user) { $text .= '{ name: "'.$user->user_login.'"'; $text .= ' username: "'.$user->display_name.'"'; $text .= ' image: "'.$user->ID.'" }'; if (($i+1) != $n) $text .= ', '; } $text .= '] '; file_put_contents( 'result.txt', $text );
您可以使用fopen和fwrite
$users = get_users('user_login', 'display_name', 'ID');
$string= 'users: [ ';
$n = count($users);
foreach ($users as $i => $user) {
$string.= '{ name: "'.$user->user_login.'"';
$string.= ' username: "'.$user->display_name.'"';
$string.= ' image: "'.$user->ID.'" }';
if (($i+1) != $n) $string.= ', ';
}
$string.='] ';
$my_file = 'file.txt';
$handle = fopen($my_file, 'w') or die('Cannot open file: '.$my_file);
fwrite($handle, $string);
您也可以這樣做。 以防萬一
$fp = fopen('data.txt', 'w');
foreach ($users as $i => $user) {
fwrite($fp, 'whatever');
}
fwrite($fp, 'anything');
fclose($fp);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.