ホームページ  >  記事  >  バックエンド開発  >  instantiationException php include ファイルをロードする 2 つの方法の効率比較

instantiationException php include ファイルをロードする 2 つの方法の効率比較

WBOY
WBOYオリジナル
2016-07-29 08:43:361152ブラウズ

まず 2 つの方法について説明します:
1) ロードするファイルのリストを保存する文字列変数を定義します。次に foreach をロードします。

コードをコピーします コードは次のとおりです:


$a = '/a.class.php;/Util/b.class.php;/Util/c.class.php'; b = '/ d.php;/e.class.php;/f.class.php;/g.class.php';
// 基本的なシステム ファイルをロードします
$kernel_require_files =explode(';', $a) ;//SYS_REQUIRE_LIB_FILE_LIST );
foreach($kernel_require_files as $f){
require_once(SYS_LIB_PATH.'/System'.$f);
// 基本的なシステム ファイルをロードします
$kernel_require_files =explode(';', $ b);/ /SYS_BASE_FILE_LIST);
foreach($kernel_require_files as $f){
require_once(KERNEL_PATH.$f);


2) ロードするすべてのファイルをインクルードファイルにロードし、これを直接インクルードします現在のページにはファイルが含まれています。
include.php ファイルの内容




コードをコピーします

コードは次のとおりです: require_once('func.php');

require_once('_KernelAutoLoader. class.php ');

require_once('ApplicationSettingManager.class.php');
require_once('lib/System/Util/CXML.class.php') );
require_once('lib/System/Util/CWeb.class.php');


個人的には、foreach のような冗長な操作がないため、2 番目の方法の方が効率的だと思います。何もないところから想像できるので、検証してみました。以下は、2 つのメソッドを使用してランダムに 10 回ロードするのにかかる時間です:
foreach
0.017754077911377
0.017686128616333

0.017347097396851
0.018272161483765 8272 161483765
0.018401145935059
0.018187046051025
0.020787000656128
0.017963171005249
include_once('include.php'); 0.025792121887207
0.024733066558838
0.025041103363037
0.024915933609009
0.024657011032104
0.024134159 088135
0.0258450508 11768
0.024954080581665
0.024757146835327
0.02684497833252
また、現在のページにすべてのファイルを直接ロードしてみました
0.02228 5938262939
0.02439403 5339355
0.023194074630737
0.023229122161865
0.024644136428833
0.023538112640381
0.024240016937256
0 . 025094032287598
0.023231029510498
0.02339506149292
その結果には驚きました!最も遅いと思われる最初の方法が最も時間がかからず、現在のページに複数のファイルを直接ロードすると時間がかかることがわかりました~
その理由は?わかりません。明確な答えが得られることを願っています。「プラン X」のコアの読み込み部分は無視して、最初の方法だけを使用しましょう。
上記では、instantiationException php include を使用してファイルをロードする 2 つの方法の効率の比較を、instinationException の内容も含めて紹介しました。PHP チュートリアルに興味のある友人の参考になれば幸いです。


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