ホームページ  >  記事  >  バックエンド開発  >  PHP の echo() と print()、require() と include() についての深い理解

PHP の echo() と print()、require() と include() についての深い理解

WBOY
WBOYオリジナル
2016-07-25 09:05:42885ブラウズ
  1. $r = print "Hello World";
コードをコピー

これは、print は一部の複雑な式で使用できるが、echo は使用できないことを意味します。ただし、echo ステートメントは値を返す必要がないため、コード内の echo ステートメントは print ステートメントよりもわずかに高速に実行されます。

2. include と require の違い include() と require() は基本的に同じ関数 (include) ですが、include() は条件付き包含関数であるのに対し、require() は無条件包含関数です。たとえば、次のコードでは、変数 $a が true の場合、ファイル a.php がインクルードされます。

  1. if($a){
  2. include("a.php");
  3. }
コードをコピー

そして、$a がどのような値をとっても、require() は include() とは異なります。 , 次のコードは、ファイル a.php をファイルにインクルードします。

  1. if($a){
  2. require("a.php");
  3. }
コードをコピー

エラー処理に関しては、 include ステートメントを使用します。 include エラーが発生した場合、プログラムは include ステートメントをスキップします。エラー メッセージが表示されますが、プログラムは実行を続行します。ただし、requireすると致命的なエラーが発生します。 もちろん、Qifen を文字通りに理解することもできます。require は、非常に強い要求や要求を意味します。

3、.require_once() および include_once() ステートメント 単純な require_once() ステートメントと include_once() ステートメントは、それぞれ require() ステートメントと include() ステートメントに対応します。 require_once() および include_once() ステートメントは主に、複数のファイルをインクルードする必要がある場合に使用され、同じコード部分をインクルードすることによって発生する関数または変数の繰り返し定義でのエラーを効果的に回避できます。

4. 空の文字列 ('') と NULL の違い PHP では空の文字列と NULL は両方とも値 0 で保存されますが、それらの型は異なります。 echo gettype(''); と出力すると、それらは string であることがわかります。もちろん、0 も混同しやすいので、型を出力してみると、0 の型が整数 ('') であることがわかります。 NULL と 0 は「等しい」ですが、同じ型ではありません。

5. issetとemptyの違い 文字通りの意味から理解できます。empty は変数が「空」かどうかを判断するのに対し、isset は変数が設定されているかどうかを判断します。ただし、ここで注意しなければならないことが 1 つあります。変数の値が 0 の場合、empty はその変数を空と同等とみなし、これは設定がないことと同じです。たとえば、$id 変数を検出するとき、$id=0 の場合、empty と isset を使用して変数 $id が設定されているかどうかを検出します。両方とも異なる値を返します。empty は設定されていないと考え、isset は取得できます。 $id の値については、以下の例を見てください。

  1. $id=0;
  2. emptyempty($id)?print "私は空です":print "私は $id ." //結果: 私は空です
  3. !isset($id) ?print "私は空です":print "私は $id .";//結果: 私は 0
コードをコピー

6、== (等しい) と === (等しい) の違い 上記の 4 番目の空の文字列 ("") と NULL の違いを思い出してください。別の例を次に示します。

  1. '' == NULL;
  2. '' === NULL;
コードをコピーします

実行後、最初のものが true で、2 番目のものが false です。 == は値が等しいかどうかのみを比較しますが、 === は値を比較するだけでなく、型も比較するため、より厳密であることがわかります。



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