ホームページ バックエンド開発 PHPチュートリアル PHP_PHP チュートリアルの include include_once require require_once のパフォーマンス比較の詳細な説明

PHP_PHP チュートリアルの include include_once require require_once のパフォーマンス比較の詳細な説明

Jul 20, 2016 am 11:10 AM
include once php require 利用 グラフィックとテキスト 存在する パフォーマンス 記事 比較する 詳しい説明

この記事では、PHP の include と include_once および require と require_once のパフォーマンス図を写真とテキストを使用して詳しく紹介しています。必要な方は詳細をご覧ください。一般的に、特に次の場合、 include_once と require_once のパフォーマンスがはるかに優れています。複数回呼び出されます。

PHP パフォーマンス最適化問題 8 関数、include() と include_once()、require() と require_once() のパフォーマンスの比較は、主にこれら 4 つの関数の実行時間を取得することでパフォーマンスの違いを比較することです。実験では Benchmark_Iterate タイプのツールを使用します。 。

テスト方法
既存のファイルexist.phpをロードし、Benchmark_Iterateクラスを通じて50回呼び出し、各関数の実行時間を取得し、曲線グラフを生成します。

テストコード

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

require_once "Benchmark/Iterate.php"
$bench = new Benchmark_Iterate; include '存在します。 php';
}
functionload_require(){
require 'exist.php';
functionload_include_once(){
include_once'exist.php'
}
functionload_require_once(){
require_once'; ;
}
$bench->run(50,"load_include");
//$bench->run(50,"load_require");
//$bench->run(50,"load_include_once") );
/ /$bench->run(50,"load_require_once");
$result = $bench->get();


テスト結果
1. include() 関数を使用してファイルをロードした場合の実行時間

PHP_PHP チュートリアルの include include_once require require_once のパフォーマンス比較の詳細な説明
イラスト: include() 関数を使用してファイルをロードした場合の平均実行時間は約 0.0013 秒です

2. include_once() を使用した実行時間。ファイルをロードする関数 時間
PHP_PHP チュートリアルの include include_once require require_once のパフォーマンス比較の詳細な説明
図: include_once() 関数を使用したファイルのロードの平均実行時間は 0.0011 ~ 0.0012 秒

3、require 関数を使用したファイルのロードの実行時間
PHP_PHP チュートリアルの include include_once require require_once のパフォーマンス比較の詳細な説明
図: require() 関数を使用してファイルをロードする平均実行時間は 0.0012 ~ 0.0013 秒です

4、require_once() 関数を使用してファイルをロードする場合の実行時間
PHP_PHP チュートリアルの include include_once require require_once のパフォーマンス比較の詳細な説明
解決策: require_once( ) ファイルをロードする関数は 0.0011 ~ 0.0012 秒です

上記のテスト結果から、ファイルをロードする 4 つの関数の実行時間は基本的に同じであることがわかります。違いは、ファイルが複数回ロードされる場合、 include とrequire 関数は複数回ロードされますが、include_once 関数と require_once 関数は 1 回だけロードされます。ロード失敗を同時に処理するのとは異なり、include() と include_once() は警告を生成しますが、require() と require_once() は致命的なエラーを引き起こします。

関連メモ
include() 関数と require() 関数
これら 2 つの構造は、失敗の処理方法を除いてまったく同じです。 include() は警告を生成し、require() は致命的なエラーを引き起こします。つまり、ファイルが見つからない場合にページの処理を停止したい場合は、require() を使用します。 include() の場合はそうではなく、スクリプトは引き続き実行されます。また、適切な include_path が設定されていることを確認してください。 PHP 4.3.5 より前では、インクルード ファイル内の構文エラーによってプログラムが停止することはありませんでしたが、このバージョン以降は停止することに注意してください。

インクルード ファイルを検索する順序は、まず現在の作業ディレクトリを基準とした include_path の下で検索し、次に現在実行中のスクリプトが配置されているディレクトリを基準とした include_path の下を検索します。たとえば、include_path は .、現在の作業ディレクトリは /www/ で、スクリプトには include/a.php を含める必要があり、ファイル内に include "b.php" が存在し、次に b を検索する順序になります。 php は最初に /www/ で、次に /www/include/ です。ファイル名が ./ または ../ で始まる場合、現在の作業ディレクトリを基準とした include_path の下でのみ検索されます。

ファイルがインクルードされると、そのファイルに含まれるコードはインクルード行の変数スコープを継承します。その時点から、呼び出し側ファイルのその行で使用可能な変数は、呼び出されたファイルでも使用できるようになります。ただし、インクルード ファイルで定義されたすべての関数とクラスにはグローバル スコープがあります。

include_once() および require_once() 関数
include_once() および require_once() ステートメントは、スクリプトの実行中に指定されたファイルをインクルードし、実行します。この動作は include() および require() ステートメントに似ていますが、唯一の違いは、ファイル内のコードが既にインクルードされている場合、再度インクルードされないことです。このステートメントの名前が示すように、このステートメントは 1 回だけ含まれます。 include_once() と require_once() は、スクリプトの実行中に同じファイルが複数回インクルードされる可能性があり、関数の再定義や変数の再割り当てなどの問題を避けるために、ファイルが 1 回だけインクルードされるようにしたい場合に使用する必要があります。


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/444722.html技術記事この記事では、PHP の include と include_once と require と require_once のパフォーマンス図を写真とテキストを使って詳しく紹介しています。必要な方は詳細をご覧いただけますが、一般的に言えば、include_once と...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

CakePHP の日付と時刻

CakePHP プロジェクトの構成 CakePHP プロジェクトの構成 Sep 10, 2024 pm 05:25 PM

CakePHP プロジェクトの構成

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

CakePHP ファイルのアップロード

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

CakePHP ルーティング

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP について話し合う

CakePHP クイックガイド CakePHP クイックガイド Sep 10, 2024 pm 05:27 PM

CakePHP クイックガイド

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法

See all articles