これは、foreachを使用してファイルに配列の値を挿入しようとしています。ファイルサイズが最大1MB(1000000byte)になった場合です。スクリプトは、これは私が使用したどのようなコードで新しいファイルを作成して...内部filesize()は0を返しますか?
を価値を置く:
foreach($array as $code){
if(filesize($file_name) < '1000000'){
$update_file = file_get_contents($file_name);
file_put_contents($file_name,$update_file.$code);
}else{
$open = fopen($file_name.rand('99999'),'w');
file_put_contents($file_name,$code);
}
echo filesize($file_name);
}
今の問題は、機能「ファイルサイズ()」は常に0を返すされている,,しかし、私はそれ以上のコードを削除し、ページにのみecho filesize($file_name);
を置く場合..それは適切な値(ファイルのサイズ)を返す、スクリプトもファイルサイズが0であるため1MB以上になった1ファイルを作るfilesize()関数の戻り値!
私はあなたが...私の問題を理解し、私の英語のため申し訳ありませんイムことを望む回答#1
に従ってください、私はこの質問PHP Problem : filesize() return 0 with file containing few data? をチェックするが、それはまださえ機能していません。
ファイルを閉じて再オープンしてから書き込みを試みてください。バッファーが原因です。 –
'$ file_name'はどこに設定されていますか? –
@ Moein7tl私は試しましたが動作しませんでした – Programmer4me