並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 42件

新着順 人気順

issetの検索結果1 - 40 件 / 42件

  • PHPのisset,empty,is_null - モトクロスとプログラムと粉砕骨折と

    絶対忘れるのでメモ。 値if($var)issetemptyis_null $var=1TRUETRUEFALSEFALSE $var="";FALSETRUETRUEFALSE $var="0";FALSETRUETRUEFALSE $var=0;FALSETRUETRUEFALSE $var=NULL;FALSEFALSETRUETRUE $varFALSEFALSETRUETRUE $var=array()FALSETRUETRUEFALSE $var=array(1)TRUETRUEFALSEFALSE

    • isset() 関数にご用心! ( #phpadvent2011 Day 17 ) - omoonのブログ

      PHP Advent Calendar 2011 の 17 日目です。昨日はhajikamiさんの「http://my-rest.icca.jp/blog/2011/12/769/」でした。 みなさんこんにちは。17 日目担当の omoon です。普段は大阪で WEB アプリケーションを作ったりしている会社におりまして、PHP は触り始めて 10 年ぐらいです。 本当はもっと早く記事を上げる予定だったんですが、急遽下のような仕事が入りまして遅くなりました。ごめんなさい。 さて、みなさんは配列の要素の存在確認ってどうされてますか? 僕は、PHP を始めてからずっと無条件で isset() 関数 を使っていたのですが、ついこの間、えー、うそん!的なハマりを体験いたしましたので、もうご存知の方には面白くともなんともない話だとは思いつつ、恥を晒す覚悟でまとめてみたいと思います。 isset() 関

        isset() 関数にご用心! ( #phpadvent2011 Day 17 ) - omoonのブログ
      • PHP :: 否定の!、is_null()、isset()、empty() の挙動の違い [Tipsというかメモ]

        否定の!、is_null()、isset()、empty() の細かな挙動の違いをすぐ忘れるのでメモ。 check() という関数を作り、「空文字」「文字列の0」「数値の0」「false」「null」「空の配列」で動作確認を行った。 動作確認で使用したコード <?php $empty_str = ''; $str0 = '0'; $int0 = 0; $false = false; $null = null; $empty_array = array(); check('empty_str', $empty_str); check('str0', $str0); check('int0', $int0); check('false', $false); check('null', $null); check('empty_array', $empty_array); function ch

        • isset, empty, is_null の動作まとめ - Qiita

          ※ 未定義の変数は Notice: Undefined variable を発生しながら null として扱われます。 複雑な表を書き並べている記事が多いですが、実際は null であれば null でなければ 空値であれば 空値でなければ の4種類の内容しか取り扱っていないものがほとんどであり、覚えるのが難しいなどと悩む必要はありません。至ってシンプルです。但し、(空配列はまだ分かるとして) 文字列のゼロと空要素から成るSimpleXMLElementの扱いには特に注意してください。これはPHPにおいて直感的ではない、最もクセのある実装のひとつです。JavaScriptなどと比較してもこれらの点だけ異なっていたりします。 変数の存在を確認するショートコード これから紹介するissetやemptyは、未定義とnullを区別することが出来ません。issetやemptyについて紹介する前に、純

            isset, empty, is_null の動作まとめ - Qiita
          • PHPで、emptyとissetの挙動を忘れてしまった時に・・・ - 手が震えたらBARに行こう

            よく、そもそも、値入ってるんですか?みたいなチェックをする時に、empty関数を使ったりすると思います。 ただ、本当に条件文正しく覚えてますか?記憶正しいですか? 僕は自信がありません。なので、ググりました。 そしたら、超良いサイトがありました。 PHPのisset,empty,is_null - モトクロスとプログラムと粉砕骨折と ありがとうございます。非常に助かりました。 で、そっから、ほぼ、引用なのですが、こんな感じらしいです。 値 if($var) isset empty is_null $var=1 TRUE TRUE FALSE FALSE $var=""; FALSE TRUE TRUE FALSE $var="0"; FALSE TRUE TRUE FALSE $var=0; FALSE TRUE TRUE FALSE $var=NULL; FALSE FALSE TRUE

              PHPで、emptyとissetの挙動を忘れてしまった時に・・・ - 手が震えたらBARに行こう
            • PHPのissetの罠 - Qiita

              fが返りました。このfはなんでしょう? 実は$hogeに格納された文字列の1文字目です。 つまり、$hoge["fuga"]の"fuga"が数値にキャストされ0になり、$hoge[0]が評価され文字列の1文字目が取り出されたわけです。で、最初の話に戻ってisset($hoge["fuga"])がtrueになったわけです。PHPの豆腐のような柔軟性にはほとほと困ったものです。 ですが、流石にPHPの中の人も「流石にねーわ」と思ったのか、PHP5.4.0からは挙動が変わりました。

                PHPのissetの罠 - Qiita
              • PHP isset, empty, is_null の違い早見表 - Qiita

                Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

                  PHP isset, empty, is_null の違い早見表 - Qiita
                • PHP: isset - Manual

                  Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

                  • PHPでの空値の扱い〜issetとemptyを比較する - tatakauashiの日記

                    PHPでは、NULLやundefinedや空文字(''のこと)や0や'0'が空値扱いされたりされなかったりする。 他の言語ではこれらを Java if (hoge == null || hoge.equals("")) { // 空文字かどうか ..... if (hoge == 0) { // 0かどうか ..... if (!hoge) { // falseかどうか ..... と書いた場合は全て違うわけだが(その前にJavaの場合は変数の型が決まっているので、上記を全て満たすhogeは記述できないが)、PHPでは、これが記述できてしまう。更に、その時の条件による挙動があいまいに感じる。 そこで、PHPでは上記のような等号/不等号による判断をなるべく避けて、isset()/empty()を使うのが良いのではないだろうか。 isset() あるかどうか empty() 無いかどうか よっ

                      PHPでの空値の扱い〜issetとemptyを比較する - tatakauashiの日記
                    • isset関数の使い方(変数が存在するかどうかの判別)

                      <html> <head><title>PHP TEST</title></head> <body> <?php $var1 = 'test'; if (isset($var1)){ print('変数$var1は存在し、値は'.$var1.'です<br><br>'); }else{ print('変数$var1は存在しないかNULLです<br><br>'); } $var2 = NULL; if (isset($var2)){ print('変数$var2は存在し、値は'.$var2.'です<br><br>'); }else{ print('変数$var2は存在しないかNULLです<br><br>'); } if (isset($var3)){ print('変数$var3は存在し、値は'.$var3.'です<br><br>'); }else{ print('変数$var3は存在しないか

                        isset関数の使い方(変数が存在するかどうかの判別)
                      • 関数に見えて言語構文なisset - これでも…

                        いつものようにテキトーに書いてたらエラー出た件。 protected function _isCancel() { $testArg = $this->_getParam('cancel'); return ($this->_getParam('cancel') && isset($this->_getParam('cancel'))) ? true : false; } こんなの書いたらエラー出た。 Fatal error: Can't use method return value in write context in path/to/phpfile.php on line xx何が悪いんだと思ったら、どうやら isset($this->_getParam('cancel')) こいつの書き方が悪かったらしい。 なぜかと思って調べてみたら http://pentan.info/php

                          関数に見えて言語構文なisset - これでも…
                        • PHP: rfc:isset_ternary

                          PHP is a web-focussed programming language, so processing user data is a frequent activity. In such processing it is common to check for something's existence, and if it doesn't exist, use a default value. Yet the simplest way to do this, something along the lines of isset($_GET['mykey']) ? $_GET['mykey'] : "", is unnecessarily cumbersome. The short ternary operator, ?: provides a way to do this m

                          • isset(), is_null(), ===, ==, NULL, false - Enjoi Blog

                            今回は PHP を理解する中でもっとも難しいとされている isset() 関数や is_null() 関数や、false や NULL に対する == や === 演算子の結果についてまとめてみた。 何が難しいかって別に分かれば難しくないんだけど、はっきり言ってややこしすぎる。 俺はこの PHP の実装があまり好きじゃない。 でもとにかくこれは理解しておかないと、後々よく分からないバグではまったりするので一応まとめてみた。 この関数は引数の値に何らかの値がセットされているかどうかを判断して、 true/false を返す。 なので、一度でも触っていれば常に true を返すと思ったら大間違い。以下のテストプログラムと結果を見てみると。 テストコード echo "isset() test case -------------------------- "; echo "no define:

                            • phpのisset_or()というユーティリティ関数が地味便利。 - Qiita

                              phpのisset()関数のドキュメントにあったisset_or()というユーティリティが地味便利なので紹介します。 なんとかしたいやつ phpではよく isset() と三項演算子の組み合わせよく使いますよね。 こういうのです。 $result = (isset($a['super_long_assoc_array_key'])) ? $a['super_long_assoc_array_key'] : null; これの気持ち悪いところは2回同じことを書かなければならないところ。 なんとかしてくれるやつ これがドキュメントのノートに投稿されていたisset_or()です。上記のなんとかしたいやつをなんとかしてくれます。 function isset_or(&$check, $alternate = NULL) { return (isset($check)) ? $check : $a

                                phpのisset_or()というユーティリティ関数が地味便利。 - Qiita
                              • phpのisset()とis_null()とempty()とif($foo)の違いにいまさら気がついた - kanonji’s diary

                                phpで変数の値の有無について判別する場合、isset()やempty()やif文にそのまま変数だけ書いたりします。 この判別がゆるゆるで、例えば empty('0') は string が入ってるのに true で空っぽ扱いです。 確かにゼロですけどね。 柔軟で人間らしいという声もあるけど、シビアに判別したい時は、勘違いしてたら怖いので一々ドキュメントを確認しないとだったりします。 この柔軟性に加えて、タイトルにもあるとおり4種類の判別方法があって、人によって使うのが違ったりするのでちょいちょい混乱します。 実は判別方法は4種類じゃなくて2種類だった さっきも、ちょっと分からなくなってドキュメントを見てたんですが、いい加減把握しようとおもってよーく見てたら気がつきました。 <?php isset($foo) === !is_null($foo); ($foo) === !empty($f

                                  phpのisset()とis_null()とempty()とif($foo)の違いにいまさら気がついた - kanonji’s diary
                                • issetとemptyとoffsetExist - k-holyのPHPとか諸々メモ

                                  タイトルは「いとしさとせつなさと…」みたいな感じで読んでください。 マジックメソッド、ArrayAccessインタフェース、Traversableインタフェースを実装した配列風のクラスを作成する際に引っかかりがちな(?)、__isset() と offsetExists() の仕様上の罠についてメモです。 内容的には ArrayAccess + マジックメソッドで公開する値と内部の値を変換するクラスにTraversableを実装する際の注意点 のほぼ続編になります。 罠というか言語仕様の不備と言ってもいいんじゃないかと考えてるのですが、PHPマニュアルの記述とともに isset(), empty(), offsetExists() それぞれについて見てみます。 isset() 個人的にはコード内で一番使用頻度が高いんじゃないかという言語構造で、PHPを使う上で最初に把握しておいて欲しいとこ

                                    issetとemptyとoffsetExist - k-holyのPHPとか諸々メモ
                                  • 文字列を配列扱いするとisset+配列記法はtrueを返す - noopな日々

                                    文字列を配列として扱うと、第2階層以降ではエラーになるのですが、第1階層だけはスライスしてくれるという仕様で微妙な動作をしているのでメモです。 http://d.hatena.ne.jp/noopable/20090726/1248589117 こちらで、よくあるPHPコードとして <?php $q = isset($_GET['q']) ? $_GET['q'] : NULL; こういうのを提示していましたが、似たソースで <?php $foo = isset($test['foo']) ? $test['foo'] : NULL; こんな感じでコードしてあったとします。$testのインデックスにfooがあるかどうかを調べて代入するというだけのコードですが、もし$testが文字列だと <?php $test = 'abc'; $foo = isset($test['foo']) ? $t

                                      文字列を配列扱いするとisset+配列記法はtrueを返す - noopな日々
                                    • 配列のキーの存在チェック(isset)をしながらhtmlspecialcharsするのをちょっと読みやすくする - ぷぎがぽぎ

                                      1枚のPHPでGETパラメータの値をそのまま出力したりする場合、何も考えずに書くとこんな感じになります。 <?php echo (isset($_GET['name']))? htmlspecialchars($_GET['name'], ENT_QUOTES, 'utf-8'): "" ?> さすがに、毎回これを埋め込むのは嫌ですよね。 なぜなら、同じkey名を2回間違わずに書かなくてはなりませんし、なによりも長い。 なので、次の考えるのがヘルパー関数をつぎように用意することです。 <?php function h_array_key($key, $array) { return isset($array[$key])? htmlspecialchars($array[$key], ENT_QUOTES, 'utf-8'): ""; } ?> <?php echo h_array_key

                                        配列のキーの存在チェック(isset)をしながらhtmlspecialcharsするのをちょっと読みやすくする - ぷぎがぽぎ
                                      • emptyとissetの違い - ほげほげ(仮)

                                        emptyとissetは結構迷うところなので、備忘録としてまとめておきます。 PHP Manualによると次のように説明されます。 empty ― 変数が空であるかどうかを検査する http://jp2.php.net/manual/ja/function.empty.php isset ― 変数がセットされていること、そして NULL でないことを検査する http://jp2.php.net/manual/ja/function.isset.php empty emptyは空でないか、0でない値であれば FALSE を返します。 PHP Manualによると空と判定されるのは次のものです。 ・"" (空文字列) ・0 (0 は整数) ・"0" (0は文字列) ・NULL ・FALSE ・array() (空の配列) ・var $var;(変数が宣言されているが、クラスの中で値が設定され

                                          emptyとissetの違い - ほげほげ(仮)
                                        • 5. isset関数の小ネタ

                                          入力された値などを調べる場合に使用するisset関数、みなさんはどのように 使用しているでしょうか? isset関数なんて使用しないという人もいるかもしれませんが、多くの人は以下 のようにしてこの関数を使用していると思います。 if (isset($_POST["name"]) && isset($_POST["age"]) && isset($_POST["comment"])) { // 処理 } さて、今回紹介するのはこんなときにちょっとだけ使える小ネタです。その 小ネタとは何か、実はisset関数は引数に複数の値を渡すことができるのです。 それはつまりどういうことかというと、今まで以下のように書いていたスク リプト if (isset($_POST["name"]) && isset($_POST["age"]) && isset($_POST["comment"])) { // 

                                            5. isset関数の小ネタ
                                          • isset, in_array, array_key_exsistsの使い分け - Qiita

                                            PHPで、配列中に特定のキーが存在するか真偽値を取りたい場合、isset、in_array、array_key_existsという関数があります。 in_arrayの速度は、O(n)なので、キーの数が増えるほど重くなります。 issetとarray_key_existsは、O(1)なのでin_arrayよりもはるかに高速でした。 また、issetとarray_key_existsでは、NULLに対しての処理が違うようです。 <?php $array_data = array('1' => NULL, '2' => 'test'); // FALSE isset($array_data['1']); // TRUE array_key_exists('1', $array_data);

                                              isset, in_array, array_key_exsistsの使い分け - Qiita
                                            • isset()の挙動がPHP5.2.10から変わった - 忍び歩く男 - SLYWALKER

                                              <?php $a = ''; var_dump(isset($a['b']['c'])); ?> このコードでNotice Errorが出るようになってた。 以下のようなものではエラーはでなかった。 <?php $a = ''; var_dump(isset($a['b'])); $a = null; var_dump(isset($a['b']['c'])); $a = 0; var_dump(isset($a['b']['c'])); $a = array(); var_dump(isset($a['b']['c'])); $a = '0'; var_dump(isset($a['b']['c'])); ?> このせいで、CakePHPでもNotice Errorがでてしまう。 一応チケットは投げた。 #6506 (Notice error when no choice HABTM s

                                                isset()の挙動がPHP5.2.10から変わった - 忍び歩く男 - SLYWALKER
                                              • isset()と!is_null()の値は常に等しいか - cnrdの日記

                                                こんばんは!今日はPHPのisset()と!is_null()(is_null()を反転したもの)に同じ値を与えたとき*1、返されるbool値は常に等しいかどうかという小さいお話です。小さい話なのに長くなってしまいましたが…。物分かりが悪く、物忘れが激しく、読解力がない、そんな自分に説明するとなればこれでもかというくらい丁寧に書くしかないですよね。はい。ありがとう。面目ねぇ。そんな感じでやっていきたいと思いますが、まずisset()とis_null()の返す値と条件についておさらいしましょう。 isset() ([http //www.php.net/manual/ja/function.isset.php:title]):変数がセットされており、それが NULL でないならTRUEを返す is_null() ([http //www.php.net/manual/ja/function.

                                                  isset()と!is_null()の値は常に等しいか - cnrdの日記
                                                • PHPのnull・空の判定・存在チェック方法5種の比較。 isset()、empty()、is_null()、== null、 ===null | WEMO

                                                  1: bool(true)、 0: bool(false)です。@がついているものは、エラー制御演算子 @をつけない場合に「Undefined variableエラー」を吐き出したものです。 ややこしいポイント isset()の挙動 変数の中身がどうというより、引数に渡された変数が「すでに初期化(セット)されたものかどうか」を判定するようです。 例えば変数が空文字 "" や空の配列array()だったとしても、空の値として初期化されているので、trueを返します。 初期化処理されていない変数に対するエラーの有無 is_null()と== nullでは、初期化処理されていない変数を使用するとデバッグモードでエラー文が出力されます。 逆に、isset()やempty()では出力されませんでした。 これは使い分けが重要になってきますね。 「is_null()」 と 「== null」の結果が結構

                                                    PHPのnull・空の判定・存在チェック方法5種の比較。 isset()、empty()、is_null()、== null、 ===null | WEMO
                                                  • PHPの empty, isset, is_null の違いをしっかり理解する | taisablog

                                                    まず表ですが、順番を理解しやすい形に変えてみました。下記のように赤と青のグループで分けて考えておくと理解しやすいです。これをみると「if ($var)とempty」、「issetとis_null」が対になっているのがわかります。 感覚的には、if ($var)は値がありそうだなと思うものがtrueになり、emptyも値がなさそうだな思うものがtrueになる感じがします。issetは、何かしら値がセットされてばtrue(つまり値がfalseでも結果はtrue)、is_nullは値がnullであればtrueということになります。 実際の挙動の動作確認についてはPHPUnitを使ってテストしたものをGitHubにあげているので合わせて確認してみてください。https://github.com/taisa831/AimaiPHP empty, isset, is_null の Notice や E

                                                      PHPの empty, isset, is_null の違いをしっかり理解する | taisablog
                                                    • 【PHP】!empty()とisset()関数の違い | WEBマスターの知恵ブログ

                                                      PHPのサンプルコードを読んでいると、!empty() とisset()関数が頻繁に出てきます。 !empty()は、emptyの否定であり、 “空ではない”という意味になります。 他方、isset()は、変数や配列が“セットされている”という意味です。 この二つは、似たような意味であることから混同して使われているようにも見受けられます。 そこで、一度、公式マニュアルで確認してみました。 empty() : http://jp2.php.net/manual/ja/function.empty.php isset() : http://jp2.php.net/manual/ja/function.isset.php 違いを要約してみます。 emptyは、0や””の空文字がセットされていても、空と評価します。 他方、issetは、0や””がセットされていれば、空でないと評価します。 つまり、

                                                      • 初期化されてない変数に対してissetめんどくせ - Unknown::Programming

                                                        <?php $data = array(); if( $data[0] ) { // 真なら }else{ // 偽なら } とか書くと、$data[0]はまだ一度も定義されてないので警告が出ます。 これを回避しようと思ったら <?php $data = array(); if( isset($data[0]) && $data[0] ) { } って感じでissetを先に噛まさないといけないわけです。 でもね、なんつーか定義されてるとか関係無しに真偽値だけチェックしたい時もあるわけで、そーゆー時ってわざわざissetするのもめんどくさいので@使っちゃダメですか? <?php $data = array(); if( @$data[0] ) { } これってバッドノウハウ?それとも絶対やっちゃいけないこと? もうわかんねー。 追記 結論から言うとempty使えばまるっとOK <?php $

                                                          初期化されてない変数に対してissetめんどくせ - Unknown::Programming
                                                        • emptyで配列が空かチェックしよう!issetとの違いもあるよ~PHP入門~ | 侍エンジニアブログ

                                                          empty関数の使い方 empty関数は主にif文と一緒に使われもし$変数または$配列がemptyの時処理するというように書いていきます。 以下にempty関数の基本的な使い方を紹介します。 <?php $var = 0; //変数:0なのでTRUE if (empty($var)){ echo '$varは0です。<br>'; } $str = ''; //変数:空なのでTRUE if (empty($str)){ echo '$strは空です。'; } $array = []; //配列:空なのでTRUE if (empty($fruits)){ echo '$arrayは空です。<br>'; } ?> 実行結果: $arrayは空です。 $varは0です。 $strは空です。 $変数または$配列をセットします。if文を使ってもし$変数または$配列がemptyの場合echoで出力する、

                                                            emptyで配列が空かチェックしよう!issetとの違いもあるよ~PHP入門~ | 侍エンジニアブログ
                                                          • POSTやGETなどの変数の存在確認をする isset()について

                                                            POSTやGETなどの変数の存在確認をする isset()について ファイルの存在確認は・・・ http://lmaker.blog17.fc2.com/blog-entry-244.html で確認してもらうとして・・・ POSTやGETなどの変数の存在・セットの確認は別の関数を使います! それでは、どうぞ。 isset($_POST["*****"]) isset($_GET["*****"]) これでOKです! 定義されていればTRUE、定義されていなければFALSEを返します。 if(isset($_POST["["*****"])"])){**********} こんな感じで使うと、ポストされていれば、動作する動きになります。 便利!

                                                              POSTやGETなどの変数の存在確認をする isset()について
                                                            • [PHP]isset、empty、!、is_nullの挙動の比較 | ino Hanging Around

                                                              $null = NULL; $empty = ''; $e_array = array(); $int0 = 0; $str0 = '0'; $true = TRUE; $false = FALSE; echo 'isset($null) = ' . (isset($null)? 'TRUE':'FALSE') . '<br>'; echo 'isset($empty) = ' . (isset($empty)? 'TRUE':'FALSE') . '<br>'; echo 'isset($e_array) = ' . (isset($e_array)? 'TRUE':'FALSE') . '<br>'; echo 'isset($int0) = ' . (isset($int0)? 'TRUE':'FALSE') . '<br>'; echo 'isset($str0) = ' . (i

                                                              • Smartyテンプレート内でissetやemptyが使えない場合 | 1000g

                                                                テンプレート内のif文で「isset()」や「empty()」などのPHP関数を使いたかったのですが、エラーになってしまいました。 どうやら、テンプレートのどこかで $default_modifiers を設定すると、使えなくなってしまうようです。 私の場合はEC CUBE改造中にこの問題にぶつかりました。grepしてみたら、/data/class/SC_View.php あたりで設定してしまっている模様。 対策としては、「{if isset($var|smarty:nodefaults)}」のように修飾子を追加して、default_modifiersを無効にすると良いようです。 修飾子のルールが未だによくわかっていないので、なぜこれを追加すると動くのかも理解していません。 (この仕様はあまりSmartとは思えないです) 参考 Smartyでdefault_modifiers指定時に{de

                                                                • isset と array_key_exists - odz buffer

                                                                  昨日の続き。 2. array_key_existsよりハッシュを使え array_searchは、毎回全データを検索するので遅いです。 データに配列の順序が関係ないなら、連想配列 + issetを使うほうが高速です。 連想配列の場合ハッシュの仕組みが使われるのでその分高速です。 同様に、array_key_existsよりissetのほうがはるかに高速です。 array_search が遅いのはそのとおりだが、array_key_exists だってハッシュを使った検索じゃないかな。 実際、ベンチマーク(コードと結果は後述)を取ると確かに isset のほうが3倍ぐらい速いのであるが、高々3倍であることを考えると array_key_exists だってコストは定数時間な訳で配列の要素数などは関係ないように思える。 そもそも、isset と array_key_exists は配列が n

                                                                    isset と array_key_exists - odz buffer
                                                                  • PHP empty() isset() is_null() if()|WEBプログラム覚書

                                                                    HOME>WEBプログラム覚書>PHP empty() isset() is_null() if() PHP empty() isset() is_null() if() PHPのempty() isset() is_null() if文の評価について 変数サンプル

                                                                    • isset関数とempty関数と「!」の違い

                                                                      isset関数とempty関数は共に変数に何か入っているか調べる関数です。空でないことを確認して、次の処理に進むときに使います。詳しくは、以下のページをご覧ください。 ○PHPマニュアル [manual func=”empty”] — 変数が空であるかどうかを検査する [manual func=”isset”] — 変数がセットされていること、そして NULL でないことを検査する <?php $value = "テスト"; if (isset($value)) { echo "中身は入っています"; } else { echo "空です"; } ?> ○実行結果 中身は入っています empty関数も同じように変数が空でないかどうかを確認することができます。 <?php $value = "テスト"; if (!empty($value)) { echo "中身は入っています"; } el

                                                                        isset関数とempty関数と「!」の違い
                                                                      • PHPのNullとissetとarray_key_exists

                                                                        先ほど気がついたのですが、PHPのissetの動きを勘違いしていました。 $var=NULL; isset( $var ); // returns FALSE is_null( $var ); // return TRUE is_null( $none ); // E_NOTCE いつから勘違いしてたんだろう。 たとえばis_nullで調べればいいのですが、 変数が存在しない場合はE_NOTICEが出ます。 実は、あることにNULL値を使おうと思ってたのです。PHPだと空白('')、FALSE、NULLと三種類あるので便利だなぁと思ってたのですが、変数の判定が出来なければ使いにくい。困ったぞ、というわけです。 で、気がついたのがarray_key_existsを使うこと。 こういう構造になっている場合、NULLでも存在判定が出来ます。 $data[ 'test' ] = NULL; arr

                                                                        • `isset() is_null() empty()` の違い と 変数の理解 と

                                                                          isset(), is_null(), empty() の違い 以下、比較してみた表 is_null()!empty()isset()empty() $x = ""FALSEFALSETRUETRUE $x = "0"FALSEFALSETRUETRUE $x = 0FALSEFALSETRUETRUE $x = 1FALSETRUETRUEFALSE $x = NULLTRUEFALSEFALSETRUE $x = FALSEFALSEFALSETRUETRUE $x = TRUEFALSETRUETRUEFALSE $x = array()FALSEFALSETRUETRUE 未定義 $xTRUEFALSEFALSETRUE で、未定義 $x と is_null() の組み合わせのみ Notice エラーが出る。 また if($x) と直接変数を突っ込んだ場合の動作は !empty と

                                                                          • isSet()とempty()の違い - PHPを勉強中です。参考書によっては!empty($Hensu)で変数が空かそ... - Yahoo!知恵袋

                                                                            isset -- 変数がセットされているかどうかを検査する 説明 bool isset ( mixed var [, mixed var [, ...]] ) var が存在すればTRUE、 そうでなければFALSEを返します。 変数が、unset() により割当を解除された場合、 isset() はもうTRUEとはなりません。 NULLに設定されている変数を調べた場合、 isset() はFALSEを返します。 NULLバイト("\0")はPHPの定数 NULLと等価ではないことにも注意してください。 例: <?php $var = ''; // これは TRUE と評価されるので、テキストが出力される if (isset($var)) { echo "This var is set so I will print."; } // 次の例では、isset() の戻り値を出力するため va

                                                                              isSet()とempty()の違い - PHPを勉強中です。参考書によっては!empty($Hensu)で変数が空かそ... - Yahoo!知恵袋
                                                                            • issetと、Undefined offsetについて - by shigemk2

                                                                              Undefined offsetでめっ☆てされたので、 なんかいろいろと調べた。 ページが見つかりません:@nifty こちらを参考にしました。 Undefined offsetとは、 未定義な添え字の配列データにアクセスしようとすると 必ず発生するらしいエラーのようです。 だから例えば、 $array[0] = 'homura'; $array[2] = 'madoka'; $array[3] = 'sayaka'; $array[4] = 'anko'; foreach($array as $arr) { echo $array; } みたいな配列を定義して、$array[1]にアクセスしようとすると、めっ☆てされるのです。 対策として、初期化の徹底が必要とのこと。 また、ループを回す際に対象となる配列は、順当に定義されている 保障はないようです。 対策としては、issetを使うのがよ

                                                                                issetと、Undefined offsetについて - by shigemk2
                                                                              • isset、in_array、array_key_existsの使い分け - Elecnotes

                                                                                PHPで、配列中に特定のキーが存在するか真偽値を取りたい場合、isset、in_array、array_key_existsという関数があります。in_arrayの速度は、O(n)なので、キーの数が増えるほど重くなり、issetとarray_key_existsは、O(1)なのでin_arrayよりもはるかに高速です。また、issetとarray_key_existsでは、NULLに対しての処理が違うようです。 $array_data = array('1' => NULL, '2' => 'test'); // FALSE isset($array_data['1']); // TRUE array_key_exists('1', $array_data); 指定したキーの値がNULLでも検知したい場合は、array_key_exists。それ以外は、issetを使うと良いと思います。i

                                                                                • ウノウラボ Unoh Labs: isset()って

                                                                                  こんにちは,ttsuruoka です. (PHP の) isset() って引数を複数取れるんですね.最近知りました. if (isset($a, $b, $c)) // if (isset($a) && isset($b) && isset($c)) と同じ 他の is 系や empty() は複数取れないようです. なんで isset() だけ複数取れるようになっているんですかねぇ. あと,is_string() とか is_int() ってアンダーバーで区切られているのに, なぜか isset() は is_set() ではないんですよね.