PHP言語の構造と関数の違い

巴扎黑
リリース: 2016-11-23 09:35:26
オリジナル
1120 人が閲覧しました

一部の PHP アプリケーションでは、isset() が strlen() の代わりに使用され、isset の方が strlen よりも高速に実行されるという比較をよく目にすると思います。 F 例: (if (isset ($ user)) {

// いくつかのことを実行します

}

その理由は、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.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート