1. file_put_contents()函數需要哪些參數(php)
int file_put_contents ( string filename, string data [, int flags [, resource context]] )
filename:要寫入數據的文件名
data:要寫入的數據。類型可以是 string,array(但不能為多維數組),或者是 stream 資源
flags:可選,規定如何打開/寫入文件。可能的值:
FILE_USE_INCLUDE_PATH:檢查 filename 副本的內置路徑
FILE_APPEND:在文件末尾以追加的方式寫入數據
LOCK_EX:對文件上鎖
context:可選,Context是一組選項,可以通過它修改文本屬性
file_put_contents("test.txt", "This is another something.", FILE_APPEND);
2. file put content php 有時可以,有時不能寫入文件
liunx系統許可權問題,寫入時先檢測是否存在目錄,否則要先生存目錄,再保存
3. php5.6的file_put_contents問題求解
你的代碼確實不怎麼規范;
有地方不明白你要干
<?php
$txt = intval(file_get_contents('cly.txt'));
file_put_contents('cly.txt', strval($txt + 1));
echo $txt;
?>
第一句話 intval是強制轉換成整數。
file_get_contents返回類型是bool|string
結果就是 文件不存 返回的是false 而在一般的語言中都是false 本身就是0. 如果存在肯定返回的是裡面的字元串。而任何的字元串只要不是數字開頭 intval都會返回0。
而php 中 Warning 不會影響程序繼續運行。
所以結果就是第一句話返回的文件不存在就是0,
至於你說的404描述錯誤 。這個不可能產生。
還有代碼真的不嚴謹。
應該這樣
$filename='cly.txt';
if(!file_exists($filename)){//文件不存在的時候
file_put_contents($filename, '');//生成文件
}
$txt = intval(file_get_contents($filename)) ;
file_put_contents($filename, strval($txt + 1));
echo $txt;
這樣就不會出現你說的問題了
4. php執行file_put_contents後生成的文件如何自動下載到本地
file_put_contents只能生成文件在伺服器上,無法讀寫客戶端的文件系統,這是WEB的協議決定了的。
要想把file_put_contents生成在伺服器上的文件發給瀏覽器用戶,只有用下載的辦法:文件生成到WEB可以訪問的路徑,然後使用<a href>建立鏈接讓用戶下載,示例代碼:
file_put_contents('a.txt', $str);
echo '<a href=a.txt>下載文件</a>';
5. php使用file_put_contents的問題
不建議使用 哦,因為:
在windows中 是換行
在Mac中 是換行
在Liunx中 是換行
但是PHP提供了一個常量來匹配不同的操作系統,即:
PHP_EOL
6. php file_put_contents本地可以,伺服器失敗是怎麼解決啊
一般都是許可權問題。請開啟錯誤報告,然後查看報錯信息。
可能是沒有寫入許可權,也可能是寫文件的文件夾不存在。
如有幫助,追問或採納,謝謝支持!
7. 關於PHP的file_put_contents錯誤問題
網站目錄的所屬組改為網站運行的帳號一般apache
8. php file_put_contents 出錯,這是哪裡的問題
出現failed to open stream: Permission denied in是apache運行用戶沒用許可權去訪問指定的文件了,所以導致目錄文件打不開了。
檢查目標文件的地址 注意要使用相對地址, 非webroot 的地址要設置許可權
9. php中的file_put_contents的問題
不用, file_put_contents 和 file_get_contents 不用手動關閉資源。
這兩個相當於 open read/write close 的封裝函數。