1
フォルダ内の各ファイルを開くためにこのコードを取得しました。値を5ずつ減らしてから、既存の内容を上書きします。文字列が新しい行を追加していて、わかりません
<?php
foreach (glob("users/*.php") as $filename) {
$array = file($filename);
$wallet = $array[0];
$time = $array[1];
$status = $array[2];
$steamid = $array[3];
$process = fopen($filename, "w") or die("Unable to open file!");
$time = $time - 5;
$newdata = $wallet . "\n" . $time . "\n" . $status . "\n" . $steamid;
fwrite($process, $newdata);
fclose($process);
}
?>
私はスクリプトを実行する前に、開いているファイルは次のようになります。
680
305
0
74892748232
の場合:スクリプトが実行された
680
310
0
74892748232
した後、ファイルは次のようになりますスクリプトが再度実行されると、より多くの行が追加され、ファイルがさらに破損します。
ファイルの文字列をここに作成されます。
$newdata = $wallet . "\n" . $time . "\n" . $status . "\n" . $steamid;
なぜそれが$時間後に$財布と$の状態の後に空行を追加しますが、しないのですか?私が代わりにこの問題を回避することができどのように書き留め:
$wallet
$time
$status
$steamid
おかげで多くを事前に:)
DepeあなたのOSが新しい行をどのように扱うかについてnds。 '$ walletを使ってみてください。 PHP_EOL。代わりに$ time'を使用します。 –
この2つのフラグをファンクションファイルで設定すると非常に便利です - FILE_IGNORE_NEW_LINES と FILE_SKIP_EMPTY_LINES – splash58