あなたはなぜ<?= count(false) ?>
が1
を返すのか知っていますか?なぜcount(false)が1を返しますか?
答えて
それは、指定の動作は:
varが配列や実装可算 インターフェイスを持つオブジェクトでない場合、1が返されます。
PHP素子がアレイまたはオブジェクトであるかどうかを決定するためにcount()
を使用してから1を妨げているようhttp://php.net/manual/en/function.count.php
false
も値であり、count()が配列を取得するのではなく有効な変数である場合、true
を返します。これは1
です。
$result = count(null);
// $result == 0
$result = count(false);
// $result == 1
"ランダム"コメント:それは、(0)がfalseを返し、if(-1)がtrueを返す場合のようなものです。 –
あなたはクローズしています: 'true'を返しません。 'count'は配列を期待しており、' var'が1でなければ配列にキャストします。 'false'は有効な値なので、' false'という値を持つ要素を1つ持つ配列にキャストします。 http://justinsomnia.org/2007/12/in-php-countfalse-returns-1/ –
によれば、それは私に見えます。彼らはこれ専用の機能を持っています(is_array()
,)。count()
を素直に使い、false
の条件をチェックして配列やオブジェクトを調べることができます。代わりに、PHPは非オブジェクト、非配列を1
(真実です)に返します。この方法は、この方法で純粋に使用することはできません(0
は空の配列/オブジェクトに対して有効な偽の結果です)。
これは、あなたが記述している状況で関数が返す値の背後にある理由かもしれません。
彼は配列やオブジェクトであるかどうかを調べようとしていないので、配列の長さを調べて、0レコードまたは存在しない配列がまだ1を返す理由を調べようとしています。 – jerebear
あなたの心にこのことを覚えて良い方法:
- 数(偽)は、基本的には同じです:
- 数(「1つのブール」)、したがって、「ONE」ブールなどがあります結果。
- 1. T-SQLでは1 = 1がFalseを返します - なぜですか?
- 2. {1、2、3} <{2,3,4,5}はなぜFalseを返しますか?
- 3. Mysqli Prepare Statement - Falseを返しますが、なぜですか?
- 4. なぜ "if(variable = class)"がfalseを返しますか?
- 5. なぜis_array()はfalseを返しますか?
- 6. なぜ私のForm_validationは常にFALSEを返しますか?
- 7. なぜMembership.ValidateUser()は常にfalseを返しますか?
- 8. なぜ私の関数は常にfalseを返しますか?
- 9. なぜRuby配列[array.length、count]が[]を返すのですか?
- 10. MYSQL COUNTがNULLを返しますか?
- 11. なぜ(true && 1)は1を返しますが、(1 && true)がtrueを返しますか?
- 12. なぜAVPlayerItemのcanPlayFastForwardメソッドがFalseを返すのですか?
- 13. double.TryParse( "0.0000"、out doubleValue)がfalseを返すのはなぜですか?
- 14. Properties.containsKeyがfalseを返すのはなぜですか?
- 15. Integer.respond_to?(:even?)がfalseを返すのはなぜですか?
- 16. "www" .count( "ww")はなぜ2ではなく1を返しますか?私のコードで
- 17. なぜsys.getsizeof(numpy.int8(1))が12を返しますか?
- 18. LIMIT 1のMySQL SELECT *は結果にFALSEを返しますか?
- 19. CapybaraとRails、なぜhas_linkですか?常にfalseを返しますか?
- 20. なぜstd :: count(_if)がsize_tではなくiterator :: difference_typeを返すのですか?
- 21. なぜ$((true == false))はbashで1と評価されますか?
- 22. RegExpが正しい文字数でfalseを返すのはなぜですか?
- 23. Count常に-1 SQL Serverを返します。 ASP.NET C#
- 24. jQueryはfalseを返します。チェックボックスが
- 25. なぜtypeidは常にfalseを返すのですか?
- 26. 空のときにmysql_queryから1を返さないphp count
- 27. なぜ私の日付は正規表現でfalseを返しますか?
- 28. HTMLアンカーでfalseが返ってもfalseを返さない
- 29. SDL_BlitSurface()は-1を返します...なぜですか?
- 30. boolean VB式が整数1に対してfalseを返す
[falseのカウントは1を返し、空の配列の場合はfalseを返します。なぜ?](http://stackoverflow.com/questions/3776882/count-of-false-gives-1-and-if-of-an-empty-array-gives-false-why) – mario