ブール値を持つ配列を持っています。ブール値の論理値に対して論理演算を実行します。
$myarray = array(true, false, false, true, false);
は今、私は私の配列の値にいくつかの論理演算を実行したいので、私は、出力を得る:私の配列から
FALSE
を。
ブール値を持つ配列を持っています。ブール値の論理値に対して論理演算を実行します。
$myarray = array(true, false, false, true, false);
は今、私は私の配列の値にいくつかの論理演算を実行したいので、私は、出力を得る:私の配列から
FALSE
を。
あなたはこの試みることができる:ビット少ないエレガント
$res = true;
foreach ($myarray as $item) $res &= $item;
echo var_dump($res);
を、それが動作するはずです。ここではビットロジックを使用しているので、最後には整数がありますが、改善することができます。あなたが根本的に間違っている文字列、ブール値として扱うしようとしている
$res = true;
foreach ($myarray as $item) $res |= $item;
echo var_dump($res);
ソリューションありがとうございました – Nabi
:あなたは、ほぼ同じことを行うことができOR
ケースでは
。あなただけfalse
のためのあなたの配列を検索することができ、そしてそれはだ場合
function all(array $values) {
foreach ($values as $value) {
if (!$value) {
return false;
}
}
return true;
}
if (all($myarray)) ...
ソリューションありがとうございました – Nabi
:
$res = array_reduce($myarray, function ($a, $b) { return $a && $b; }, true);
// default value ^^^^
以上の効率的な短絡all
機能:何が欲しいのは例えば、配列の削減、あります現在、true
を返すfalse
を返し、そうでない場合:
$result = (array_search(false, $myarray, true) === false);
あなたの質問を編集したので、0または1を返すようにしたい場合:
ありがとうございました – Nabi
あなたの希望する結果はここにありますか? – Maximus2012
なぜvar_dump()を実行し、var_dump()によって返された結果をエコーしますか? –
興味深い、またここで言及:http://php.net/manual/en/function.implode.php#104568 – dchayka