PHP isset() と empty() の違いの詳しい説明_PHP チュートリアル
PHP の isset() 関数は、通常、変数が設定されているかどうかを検出するために使用されます
形式: bool isset (mixed var [,mixed var [, ...]])
関数: 変数が設定されているかどうかを検出します
Return value:
変数が存在しない場合は FALSE を返します
変数が存在し、その値が NULL の場合も FALSE を返します
変数が存在し、その値が NULL でない場合は TRUE を返します
で複数の変数をチェックする場合同時に、各単一項目が前の要件を満たしている場合は TRUE のみを返し、それ以外の場合は結果は FALSE になります
バージョン: PHP 3、PHP 4、PHP 5
その他の指示:
unset() を使用して変数を解放した後は、もはや isset() です。
PHP 関数 isset() は変数にのみ使用でき、他のパラメータを渡すと解析エラーが発生します。
定数が設定されているかどうかを検出するには、define() 関数を使用します。
PHPのempty()関数は、値が空かどうかを判定します
形式: bool empty (mixed var)
関数: 変数が空かどうかを確認します
戻り値:
変数が存在しない場合はTRUEを返します
変数が存在し、その値が ""、0、"0"、NULL、FALSE、array()、var $var; および属性のないオブジェクトの場合、TRUE が返されます
変数が存在し、その値が存在しない場合""、0、"0"、NULL、FALSE、array()、var $var; および属性のないオブジェクトは FALSE を返します
バージョン: PHP 3、PHP 4、PHP 5
その他の命令:
empty() value =!(boolean) var ですが、変数が未定義であるため、警告メッセージは生成されません。詳細については、「ブール値への変換」を参照してください。
empty() は変数にのみ使用できます。他のパラメータを渡すと Paser エラーが発生し、操作が終了します。
定数が設定されているかどうかを検出するには、define() 関数を使用します。
例: empty() と isset() の単純な比較
$var = 0;
// $ であるため、結果は true になります。 var は空です
if (empty($var)) {
echo '$var は 0 か、まったく設定されていません';
}
// $var が設定されているため、結果は false になります
if (!isset($ var)) {
echo '$var is not set at all';
?>
注: empty() は変数のみを検出します。変数ではないものを検出すると解析エラーが発生します。つまり、次のステートメントは機能しません: empty(addslashes($name))。
以下は、Script House によってテストされた isset 関数と empty 関数の詳細な例のコードです。これを読んだ後は、基本的に同じです:
error_reporting(E_ALL);
echo '未定義 $var
'
echo "isset test:
"; var ))
{
echo '変数 $var が存在します!
}
if ( empty ( $var )){
echo 'の値は空です
';
}
else
{
echo '変数 $var の値は空ではありません
';
}
echo "変数の直接テスト:
"; $var ){
echo '変数 $var は存在しません!
';
}
else {
echo '変数 $var は存在しません!
'
}
echo '------ ----------------------------
';
echo '$var = ''';
echo "isset test:
";
if (isset ( $var ))
{
echo '変数 $var が存在します!
' ;
}
echo "空のテスト:
";
if ( empty ( $var )){
echo '変数 $var の値が空です'
}
else
{
echo '変数 $var の値が空ではありません
';
}
echo "変数直接テスト:
";
if ( $var ){
echo '変数 $var が存在します!
';
}
else {
echo '変数 $var が存在しません!
'
}
echo '---------------------- --------
';
echo '$var = 0
';
echo 'isset test:
'; var = 0;
if ( isset ( $var ))
{
echo '変数 $var が存在します!
' ;
echo "空のテスト:
"; )){
echo '変数 $var の値が空です
';
}
else
{
echo '変数 $var の値が空ではありません
';
echo "変数の直接テスト:
";
if ( $var ){
echo '変数 $var が存在します!
';
}
else {
echo '変数 $var が存在しません!
' ;
}
エコー '---------------------------------
'
エコー '< ;B> $var = null
';
$var = null ;
if ( isset ( $var ))
echo ' $var が存在します !
' ;
}
echo "empty test:
";
if ( empty ( $var )){
echo '変数 $var の値が空です
';
}
else
{
echo '変数 $var の値が空ではありません
';
}
echo "変数の直接テスト:
";
echo '変数 $ var が存在します!
';
else {
echo '変数 $var が存在しません!
'
}
echo '--------------- --- ---------------
';
echo '$var ="php"
'; echo 'isset テスト:
';
$var = "php";
if (isset ( $var ))
echo '変数 $var が存在します!
' ;空のテスト:
";
if ( empty ( $var )){
echo '変数 $var の値は空です
';
}
else
{
echo '変数 $var の値は空ではありません
';
}
echo "変数の直接テスト:
";
if ( $var ){
echo '変数 $var が存在します!
';
else {
echo '変数 $var が存在しません!
';
}
?>
PHP でページ プログラムを作成するとき、PHP の最後に変数値があるかどうかを判断するために変数処理関数をよく使用します。ページが空です。 Start empty() 関数の使用に慣れていましたが、いくつか問題が見つかったので、isset() 関数に切り替えたところ、問題はなくなりました。
名前が示すように、empty() は変数が「空」かどうかを判断し、isset() は変数が設定されているかどうかを判断します。いわゆる「名前のとおり」ということで、最初に少し回り道をしました。変数の値が 0 の場合、empty() も真 (True) になるため、いくつかの事故が発生します。 empty() と isset() は両方とも変数処理関数であり、両方とも変数が設定されているかどうかを判断するために使用されますが、いくつかの違いがあることがわかりました。empty は変数が空かゼロかどうかも検出します。変数値が 0 の場合、empty() は変数が空であることと同等、つまり設定されていないことと同等であるとみなします。
たとえば、$id 変数を検出するには、$id=0 の場合、empty() と isset() を使用して、変数 $id が設定されているかどうかを検出します。両方とも異なる値を返します。empty() は、あると考えます。設定なし、isset() $id の値を取得できます:
コードをコピー
コードは次のとおりです:
$id=0;
empty($id)?print "空です。" :print "$id です。";
//結果: 空です。
!isset($id)?print "$id です。"; //結果: 0 です
これは、変数処理関数を使用する場合、変数の値が 0 である可能性がある場合、empty() を使用するときは注意し、現時点ではそれを isset に置き換える方が賢明であることを意味します。
PHP ページの URL 末尾パラメーターが id=0 である場合 (例: test.php?id=0)、比較してみます:
if(empty($id )) $id=1; - id=0 の場合、id も 1 になります
if(!isset($id)) $id=1; - id=0 の場合、id は 1 になりません
は分離できます。 上記の推論を検出するには、次のコードを実行します。
print $id; // Get 0
それらの接続について言えば、empty() とisset() は両方とも変数処理関数であり、その機能は変数がすでに構成されているかどうかを判断することですが、変数の処理プロセスが非常に類似しているため、それらの関係についての理解が不十分です。 empty() と isset() の 2 つの関数自体だけを考慮すると、別の角度から見るとさらに混乱するでしょう。 empty() と isset() の処理対象は未定義変数、0、空文字列に過ぎません。
変数が空の文字列の場合、empty() は TRUE を返し、isset() は TRUE を返します。定義されていない場合、empty() は TRUE を返し、isset() は FLASE を返します。
マニュアルでの empty() の説明は次のとおりです。
説明 bool empty(mixed var) var が非空またはゼロ以外の値の場合、empty() は FALSE を返します。つまり、""、0、"0"、NULL、FALSE、array()、var $var;、およびプロパティを持たないオブジェクトは空とみなされ、var が空の場合は TRUE が返されます。
マニュアルでの isset() の説明は次のとおりです:
isset() は変数が設定されているかどうかを検出します 説明 bool isset (mixed var [,mixed var [, ...]] )
Returns var が存在する場合は TRUE、それ以外の場合は FALSE を返します。
unset() を使用して変数が解放された場合、それは isset() ではなくなります。 isset() を使用して NULL に設定された変数をテストすると、FALSE が返されます。また、NULL バイト (「?」) は PHP の NULL 定数と同等ではないことに注意してください。
警告: isset() は変数でのみ使用できます。他のパラメータを渡すと解析エラーが発生するためです。定数が設定されているかどうかを確認したい場合は、define()関数を使用できます。
変数が宣言されているかどうかを判定したい場合はisset関数を使うことができます
変数にデータが代入され空でないかどうかを判定したい場合はempty関数を使うことができます
こんなことをしたい場合変数が存在するか空でないかを判断するには、まず isset 関数を使用し、次に empty 関数を使用します
http://www.bkjia.com/PHPjc/322452.html
www.bkjia.com

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

マルチスレッドと非同期の違いは、マルチスレッドが複数のスレッドを同時に実行し、現在のスレッドをブロックせずに非同期に操作を実行することです。マルチスレッドは計算集約型タスクに使用されますが、非同期はユーザーインタラクションに使用されます。マルチスレッドの利点は、コンピューティングのパフォーマンスを改善することですが、非同期の利点はUIスレッドをブロックしないことです。マルチスレッドまたは非同期を選択することは、タスクの性質に依存します。計算集約型タスクマルチスレッド、外部リソースと相互作用し、UIの応答性を非同期に使用する必要があるタスクを使用します。

PHPの魔法の方法は何ですか? PHPの魔法の方法には次のものが含まれます。1。\ _ \ _コンストラクト、オブジェクトの初期化に使用されます。 2。\ _ \ _リソースのクリーンアップに使用される破壊。 3。\ _ \ _呼び出し、存在しないメソッド呼び出しを処理します。 4。\ _ \ _ get、dynamic属性アクセスを実装します。 5。\ _ \ _セット、動的属性設定を実装します。これらの方法は、特定の状況で自動的に呼び出され、コードの柔軟性と効率を向上させます。

C言語に組み込みの合計機能はないため、自分で書く必要があります。合計は、配列を通過して要素を蓄積することで達成できます。ループバージョン:合計は、ループとアレイの長さを使用して計算されます。ポインターバージョン:ポインターを使用してアレイ要素を指し示し、効率的な合計が自己概要ポインターを通じて達成されます。アレイバージョンを動的に割り当てます:[アレイ]を動的に割り当ててメモリを自分で管理し、メモリの漏れを防ぐために割り当てられたメモリが解放されます。

C言語では、charとwchar_tの主な違いは文字エンコードです。CharはASCIIを使用するか、ASCIIを拡張し、WCHAR_TはUnicodeを使用します。 Charは1〜2バイトを占め、WCHAR_Tは2〜4バイトを占有します。 charは英語のテキストに適しており、wchar_tは多言語テキストに適しています。 CHARは広くサポートされており、WCHAR_TはコンパイラとオペレーティングシステムがUnicodeをサポートするかどうかに依存します。 CHARの文字範囲は限られており、WCHAR_Tの文字範囲が大きく、特別な機能が算術演算に使用されます。

XMLをPDFに直接変換するアプリケーションは、2つの根本的に異なる形式であるため、見つかりません。 XMLはデータの保存に使用され、PDFはドキュメントを表示するために使用されます。変換を完了するには、PythonやReportLabなどのプログラミング言語とライブラリを使用して、XMLデータを解析してPDFドキュメントを生成できます。

GO言語で構造を定義する2つの方法:VARとタイプのキーワードの違い。構造を定義するとき、GO言語はしばしば2つの異なる執筆方法を見ます:最初...
