1

最近、「スクリプトが opCache にヒットしたかどうかを確認する方法はありますか」という質問をしましたが、答えを見つけることができませんでした。今、Php5.5.11のchangelogを見ていると、新しい関数が

OPキャッシュ:

関数 opcache_is_script_cached() が追加されました。

が追加されました。名前に基づいて、私が望んでいることを正確に実行していますが、問題は、この関数に関するドキュメントが見つからないことです。

この関数が何をするのか正確に教えてもらえますか? 勝手な推測はご遠慮ください。

4

3 に答える 3

2

この投稿 (およびその他の PHP マニュアル ノート) を読んだ後、関数がまだ文書化されていないことに気付きました。とにかく、私は最近、この関数を PHP ドキュメントに追加するために少し時間を割きました:

http://php.net/manual/en/function.opcache-is-script-cached.php

マニュアルからの抜粋:

opcache_is_script_cached — スクリプトが OPCache にキャッシュされているかどうかを示します

boolean opcache_is_script_cached ( string $file )

この関数は、PHP スクリプトが OPCache にキャッシュされているかどうかを確認します。これは、特定のスクリプトのキャッシュの「ウォーミング」をより簡単に検出するために使用できます。

OPCache にキャッシュされているTRUE場合は返し、そうでない場合は返します。$fileFALSE

于 2015-02-16T18:11:27.490 に答える
2

その関数のソース コードはzend_accellerator_module.cの一番下にあります。目的の動作をしているように見えます。チェックしているスクリプトファイル名である引数を1つ取るようです。のコードはfilename_is_in_cache、同じファイルが異なる文字列 (「filename.php」と「/var/www/filename.php」) で指定されている場合を処理しているようですが、さらに深く掘り下げるか、自分でテストして確認することができます。

また、非常に最小限ではありますが、例を示すテスト ケースを次に示します。

于 2014-04-22T21:08:40.930 に答える
0

実際、文書化された関数opcache_get_statusは、あなたが望むことを行います。trueパラメータを渡して呼び出しscripts、返された配列のセクションをチェックするだけです。

于 2015-02-03T22:23:42.707 に答える