ホームページ  >  記事  >  バックエンド開発  >  PHP_PHP チュートリアルの echo() と print()、require() と include() およびその他の混同されやすい関数の違い

PHP_PHP チュートリアルの echo() と print()、require() と include() およびその他の混同されやすい関数の違い

WBOY
WBOYオリジナル
2016-07-21 15:20:13753ブラウズ

1. echo と print の違い

PHP の echo と print の機能は基本的に同じ (出力) ですが、両者にはまだ微妙な違いがあります。 echo出力後の戻り値はありませんが、printには戻り値があり、実行失敗時にfalseを返します。したがって、通常の関数として使用できます。たとえば、次のコードを実行すると、変数 $r の値は 1 になります。

$r = print "Hello World";

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

2. include と require の違い

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

if($a){
include("a.php"); そして require( ) は include () と同じであり、$a がどのような値であっても、次のコードはファイル a.php をファイルにインクルードします:

if($a){
require("a.php") ;
}

一方、include ステートメントを使用する場合、include エラーが発生した場合、プログラムはエラー メッセージが表示されますが、プログラムは実行を続行します。ただし、requireすると致命的なエラーが発生します。

もちろん、Qifeng を文字通りに理解することもできます。require は、非常に強い要求や要求を意味します。


3.require_once() ステートメントと include_once() ステートメント

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

4. 空の文字列 ('') と NULL の違い

PHP では、空の文字列と NULL は両方とも値 0 で格納されますが、それらの型は異なります。もちろん、echo gettype(0) を試してみると、その型がわかります。 0。整数 (整数型) です。文字列 ('')、NULL、および 0 は「等しい値」ですが、等しい型ではないことがわかります。

5. isset と empty の違い

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


6. == (等しい) と === (同一) の違い

上記の空の文字列 ("") と NULL の 4 番目の違いを例に見てみましょう:
'' == NULL;
'' === NULL;

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


http://www.bkjia.com/PHPjc/325144.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/325144.html技術記事 1. echo と print の違い PHP の echo と print の機能は基本的に同じ (出力) ですが、両者にはまだ微妙な違いがあります。 echo 出力後の戻り値はありませんが、print には戻り値があります。次の場合...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。