問題タブ [file-put-contents]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1232 参照

php - php - ディレクトリに内容を入れる

サーバーに画像をアップロードしようとしています。私が持っているコードは機能しますが、ルートディレクトリにファイルを保存します。

「/resources/thumb/file.png」内のファイルをアップロードするにはどうすればよいですか?

0 投票する
2 に答える
1498 参照

php - file_put_contents はデータを上書きします

データベースにエントリがあるたびに file_put_content を使用してファイルにデータを書き込みます。新しいエントリを追加する代わりに、古いデータを新しいもので上書きします。これは、私が使用しているコードの一部です。APPEND In フラグで試しましたが、機能しません。`

0 投票する
1 に答える
2013 参照

php - .zipファイルにデータを書き込むことはできますか?

この例によると:

データを .zip ファイルに書き込むこともできますか?

0 投票する
1 に答える
230 参照

php - ディレクトリ内の他のファイルの fileatime() に影響を与える file_put_contents()

過去数日間解決しようとしてきた本当に奇妙なバグに遭遇しましたが、うまくいきませんでした。API 呼び出しをキャッシュするためのクラスと、WordPress プラグインでカスタム API エンドポイントを作成するために使用されるクラスがあります。簡単に言えば、WordPress プラグインは外部 API をヒットし、キャッシュ クラスで結果をキャッシュします。多くの個々のアイテムが API でアクセスされるため、数十のローカル キャッシュ ファイルが生成されます。

シナリオ

私のキャッシング クラスでは、ローカル キャッシュの有効期限が切れた場合 (インスタンス化時に設定された有効期限よりも古い場合)、API が再びヒットし、結果が次のようにキャッシュされます。

私の WordPress プラグインでは、キャッシュ ファイルをループして、N 日間アクセスされていないファイルを削除したいと考えています。このメソッドは、cron を使用してヒットします。私はそのようにアクセスされた時間をチェックしています(これはまだ開発中で、デバッグ用に印刷しています):

これまでの完全な方法は次のとおりです。

clearstatcache()現時点で数件の電話があることにお気付きでしょう。

問題

新しいキャッシュ ファイルが作成されるたびfileatime()に、同じディレクトリ内の他の多くのファイルについて報告されるアクセス時刻が現在の時刻に更新されます。これらは、新しいキャッシュ ファイルの 1 秒後に表示されることがあります。

これが私の完全な方法です:

クリーンアップ ロジックを記述する別の方法を見つけることはできますが、PHP が実際にこれらの各ファイルにアクセスしているのではないかと懸念しています (1 つの新しいファイルに対して 18 のうち 12 を見たことがあります)。

私が試したこと

  • clearstatcache()絶対に _everywhere を呼び出します)
  • fopen()、 、fwrite()、すべての手順を手動で手動fflush()で実行するfclose()
  • file_put_contents()呼び出しの時点で書き込まれるファイル名の書き込み

ここで何が起こっているのか誰かが知っているなら、私はとても感謝しています.

0 投票する
2 に答える
3108 参照

php - API から PHP を使用して CSV ファイルをダウンロードする - URL が .csv で終わらない

API から 2 つの異なる方法でファイルをダウンロードしようとしましたが、成功しませんでした。https://example.com/export/banana/by_date/v4?api_token=666&from=$today&to=$today

*ファイルの末尾が ではないことに注意してください.csv。ファイルのダウンロード ファイルがポップアウトされるだけです。

ダウンロードされるファイルは .CSV ファイルです。

私はCURLを使用してみました:

  • このコードで、黒い test.csv ファイルを取得しました。
  • 関数を実行した後、画面に何も出力されません ( print_r($result))

そして私は関数を使ってみましたfile_put_contents:

※1行目にURLが入ったCSVファイルを取得します(https://example.com/export/banana/by_date/v4?api_token=666&from=2016-01-31&to=2016-01-31)。

私がこれを正しく行っているかどうかを教えてくれる人はいますか? (これはファイルへの直接リンクではないため、おそらく私のやり方が間違っているのでしょう)。そして、これを行う正しい方法は何ですか。

0 投票する
1 に答える
113 参照

php - PHP は、ファイル名は異なるが内容は同じである 2 つのファイルを一度に作成します。

目標は、カスタム セッション ファイルのリポジトリを作成することです。このコードを使用してデータをセッション ファイルに書き込むと、php は、名前は異なるが同じ内容の 2 つのファイルを作成します。なぜこうなった?

これにより、同じ内容のファイルが一度に 2 つ作成されます。

両方のファイルの内容:

これはクラスになると理解されていますが、コードはクラスのコンテキストでも index.php でも同じように機能します。