一部の PHP アプリケーションでは、isset() が strlen() の置き換えに使用されている、isset の方が strlen よりも高速に実行される、などといった比較をよく目にすると思います。この記事では主に、PHP 言語の構造と関数の違いの例を共有します。みんなを助けることを願っています。
例:
if ( isset($user) ) { //do some thing }
その理由は、isset が言語構造であり、strlen が関数であるためです。また、echo は関数ではなく言語構造です。
では、言語構造とは何でしょうか?関数とは何か違うのでしょうか?
1. 言語の構造と関数とは何ですか?
言語の構造: PHP 言語のキーワードであり、ユーザーが定義したり、言語拡張機能やライブラリに追加したりすることはできません。変数と戻り値があります。
機能: コードブロックで構成されており、再利用できます。ソースコードの観点からは、Zend エンジンに基づいて実装されており、ext 拡張ライブラリの関数はこのように実装されています。
2. 言語構造が関数よりも速い理由は、PHP では関数が最初に PHP パーサー (Zend エンジン) によって言語構造に分解されるため、関数には言語よりもパーサー分析の層が 1 つ多いことがわかります。構造物。こうすることで、どの言語構造が関数よりも高速であるかをよりよく理解できます。
3. 言語構造と関数の違い 言語構造は、対応する関数よりも高速です。言語構造は、言語キーワードであるため、構成アイテムでは使用できません。 (php.ini)、ただし関数は可能です。言語構造はコールバック関数として使用できません
4. 言語構造リスト
echo() print() die() isset() unset() include(),注意,include_once()是函数 require(),注意,require_once()是函数 array() list() empty()
関連推奨事項:
以上がPHP 言語の構造と関数の違いの例を共有するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。