ここから本文です

最大添字を取得するには

let********さん

2007/9/621:05:46

最大添字を取得するには

PHP で
$a[0] = 7;
$a[5] = 9;
$a[10] = 11;

ここでcount関数を使うと
count($a) =3
となりますが、配列の個数ではなく、
配列の最大の添字、この場合は10を取得したい場合は
どのようにすればよいでしょうか?

閲覧数:
13,229
回答数:
2

違反報告

ベストアンサーに選ばれた回答

a_c********さん

2007/9/704:16:55

添字を配列で返す array_keys() と、
配列の最大値を返す max() を組み合わせて、

max(array_keys($a));

とすればOK.

質問した人からのコメント

2007/9/7 12:26:21

成功 xv920yj さんもありがとうございました!!

ベストアンサー以外の回答

1〜1件/1件中

xv9********さん

2007/9/702:34:38

) 質問した人: lets_chiebukuroさん 4-3

$a2 = array_keys($a);

とやって、配列$aのkeyをvalueとする新しい配列を得ます。質問の例だと、返される配列$a2の中身はこうなります。

Array
(
[0] => 0
[1] => 5
[2] => 10
)

この新しい配列の最後のvalueを見れば、元の配列の最大keyがわかります。新しい配列はkeyがゼロから始まっているので、配列の最後のvalueは「keyが(配列の要素数-1)のもの」です。

$n_a2 = count($a2);
$max_key = $a2[$n_a2-1];

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる