PHP で count 多次元配列の長さの統計を実装する方法。必要な友達はそれを参照してください。
以下のプログラムを実行した結果は()です
コードは次のとおりです |
コードをコピー |
?$numb=配列(
配列(10,15,30),配列(10,15,30),配列(10,15,30)
);
エコー数($numb,1);
A.3
B.12
C.6
D.9
|
答え:B
count 関数で mode が COUNT_RECURSIVE (または 1) に設定されている場合、多次元配列内の配列の要素数が再帰的に計算されます (つまり、結果では 12 になります)。モードが設定されていない場合、デフォルトは 0 になります。多次元配列 (配列内の配列) は検出されません (結果 3)。
最初に走査するのは外側の配列です。要素が 2 つあり ("color1"、"color2"、"color3")、つまり 3
であることがわかります。
次に、("color1", "color2", "color3") 配列を走査し、9 個の要素を取得します。つまり 9
結果は3+9=12です
参考
コードは次のとおりです
| コードをコピー
|
$fruits = 配列 (
配列 (1、2、null、null、5、6)、
配列 (1、2、null、null、5、6)、
);
echo(count($fruits[0]));
?>
|
以下を直接使用するなど、他の方法で定義された配列について話している可能性があります:
コードは次のとおりです
| コードをコピー
|
$fruits[0][0]=1;
$fruits[0][3]=1;
$fruits[0][4]=1;
echo(count($fruits[0]));
?>
|
この場合、PHP の配列ではインデックスが連続している必要がないため、3 が出力されます。リファレンス マニュアルには次の段落があります。
配列
PHP の配列は、実際には順序付けされたグラフです。グラフは値をキーにマッピングするタイプです。この型はさまざまな方法で最適化されているため、実際の配列、リスト (ベクトル)、ハッシュ テーブル (グラフの実装)、辞書、セット、スタック、キューなどとして使用できます。さらなる可能性を。別のPHP配列を値として使用できるので、ツリーのシミュレーションも簡単に行えます。
例
2 次元配列または多次元配列の最初の次元の長さを取得します。これは、たとえば、読み取った配列が 2 次元配列であるかどうかを判断する一般的なものです。
コードは次のとおりです
コードをコピー
|
|
$arr=配列(
0=>array('title' => 'News1', 'viewnum' => 123, 'content' => 'ZAQXSWecrfv'),
1=>array('title' => 'News2', 'viewnum' => 99, 'content' => 'QWERTYUIOPZXCVBNM')
);
?>
配列 $arr の長さをカウントしたい場合、つまり、2 次元配列にニュース項目が 2 つしかない場合、必要な数も 2 ですが、異なるバージョンで count($arr) を使用すると、 PHP の場合、統計結果は異なります。
その後、PHP マニュアルで count 関数には 2 番目のパラメーターがあることがわかりました。これについては次のように説明されています。
count 関数には 2 つのパラメーターがあります:
0 (または COUNT_NORMAL) がデフォルトで、多次元配列 (配列内の配列) は検出されません。
1 (または COUNT_RECURSIVE) は多次元配列を検出します。
したがって、読み取り配列 $arr にニュース情報が含まれているかどうかを判断したい場合は、次のように記述する必要があります:
コードは次のとおりです
コードをコピー
|
|
if(is_array($arr) && count($arr,COUNT_NORMAL)>0 )
{
……
} その他 {
……
}
?>
| 次のようなコードを使用して関数をテストできます:
コードは次のとおりです
コードをコピー
|
|
$arr=配列(
0=>array('title' => 'News1', 'viewnum' => 123, 'content' => 'ZAQXSWecrfv'),
1=>array('title' => 'News2', 'viewnum' => 99, 'content' => 'QWERTYUIOPZXCVBNM')
);
echo '多次元配列をカウントしません:'.count($arr,0);//count($arr,COUNT_NORMAL)
echo " ";
echo '統計的多次元配列:'.count($arr,1);//count($arr,COUNT_RECURSIVE)
?>
| さて、この時点で、PHP で 2 次元または多次元配列の最初の次元の長さを取得する問題は解決されました
|
http://www.bkjia.com/PHPjc/631599.html
www.bkjia.comtruehttp://www.bkjia.com/PHPjc/631599.html技術記事 PHP での count 多次元配列の長さ統計の実装方法が必要な友人は、それを参照してください。 以下のプログラムを実行した結果は () になります。 コードは次のようになります。 ?$numb=array( array(10,15,30),ar...)