ホームページ >php教程 >php手册 >PHPのrequire_onceの使用を避ける方法

PHPのrequire_onceの使用を避ける方法

WBOY
WBOYオリジナル
2016-06-21 08:52:251059ブラウズ

PHP で require_once/include_once を使用すると便利ですが、コストがかかることがわかっています。テスト データによると、require_once は require よりも 3 ~ 4 倍遅いため、PHP 開発では require/include を使用するようにしてください。

require/include を回避するために私がよく使用する方法をリストしてみましょう。

__autoload を使用する

PHP5 では、__autoload を使用して require を回避できます。うまく使えば、コード内にいくつかの要件さえ表示されなくなり、非常に快適になります。テスト結果は、__autoload を使用した後の new Foo; が require_once ‘foo.php’; よりも約 3 倍高速であることを示しています。

補足: オートロードの競合を避けるために、spl_autoload_register (PHP 5 >= 5.1.2) を使用してマジック関数 __autoload の動作を変更することを検討できます。

定義済みを使用して、ロードされているかどうかを確認します

コードの先頭で定義を使用して、対応する定数が定義されているかどうかを確認し、定義されている場合は、それを直接返します。

if(!define('_MYCLASS_'))

戻る;

定義('_MYCLASS_', 1);

クラス MyClass { ... }

?>

テストしたところ、Defined のパフォーマンスはあまり良くありません...

要求する前に確認してください

class_exists または function_exists を使用して、アクションを実行する前にロードされていないことを確認します。これは、require_once よりも少なくとも 3 倍高速です。 php4も使えます。

class_exists('myClass') または require('/path/to/myClass.class.php');



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。