• ベストアンサー

配列のインデックスの数値を値として取得したい場合どうすればよいでしょうか

配列のインデックスの数値を値として取得したい場合どうすればよいでしょうか

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

インデックスだけを配列にしたいということでしょうか。 それでしたら、array_keys関数が使えます。 もしくは foreach ($array as $key => $value) { } 等とすれば、$keyでインデックスが取得できますよ。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • php504
  • ベストアンサー率42% (926/2160)
回答No.1

foreach ($array as $index => $value) { echo $index; } とか list($index, $value) = each($array); echo $index; ですか

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 配列内で最大値を検索し、その値とindexを保管するにはどのようにしたらいいでしょうか??

    宜しくお願い致します。 VB2005を使って書いてます。 内容は質問タイトル通りなのですが、配列内の格納されている数値の中で最大値を抽出し、index番号も取得したのですが、かなり考えたのですが思いつかないので、こちらで質問させていただきました。 もちろん配列内では、最大値が一つとは限らず、複数個存在する場合がありますので、該当する全てのindex番号に関しては抽出することができるようにと考えています。 後々そのindex番号を使って検索を行うことになりますので、出来ましたらそのindex番号をさらに配列に格納し、For~nextを利用して簡単に参照することが出来るように出来たら理想的なのですが・・・ どなたかお知恵を拝借させてください。 宜しくお願い致します。

  • 配列内の値の取得について

    FlashBuilderです。 例1のようにすると問題なく取得できるのですが、 例2のようにするとobject,objectという値が返ってきてしまいます。 例2の配列内の値を参照するにはどのようにすれば、宜しいでしょうか? 例1: var myAry:Array=[]; myAry.push("a","b"); Alert.show(myAry[0]); 例2 var myAry:Array=[]; myAry.push({index:0, souce:"a"}); myAry.push({index:1, souce:"b"}); Alert.show(myAry[0]);

    • ベストアンサー
    • Flash
  • VBAで多次元配列のインデックス番号の取得

    一次元配列の場合=UBOUND(array)-LBOUND(array)で配列の長さが求められますよね。これが二次元配列でarray(4,13)とかの場合上記式を入れても4という値が取得できますが、13という値を求めたい場合はどうすればよいでしょうか

  • [PHP]配列におけるインデックスの考え方

    $scores = [10, 50, 30, 20]と言った配列があるとします。 配列内の10の値を取りだそうとすれば print $scores[0]; とすればブラウザに10の値が表示されます。 というか、配列というのは、[0][1][2][3]…と数えるものだと思っていました。 今、array_fill()関数について学習しています。 $prices = array_fill(0, 5, 10); としてprint_rで出力すると Array ( [0] => 10 [1] => 10 [2] => 10 [3] => 10 [4] => 10 ) と自分で理解できる範囲の結果が表示されます。 ところが、 $prices = array_fill(-2, 5, 10); をprint_rで出力すると以下のように返ってきます。 Array ( [-2] => 10 [0] => 10 [1] => 10 [2] => 10 [3] => 10 ) 単純に考えると、以下のように返ってこないのはなぜなのでしょうか? Array ( [-2] => 10 [-1] => 10 [0] => 10 [1] => 10 [2] => 10 ) また $prices = array_fill(5, 5, 10); と記述すると、 Array ( [5] => 10 [6] => 10 [7] => 10 [8] => 10 [9] => 10 ) と返ってきます。 配列のインデックス、添字を名前や商品名にして連想配列が出来るのはわかります。 (1)マイナス値からはじめた場合、なぜ[-2][-1][0]…のように返ってこないのはなぜでしょうか? (2)配列の添え字、インデックスが、[5]ではじまり[6][7][9][10]…とすることに 何か意味があるのでしょうか? $prices = [10, 10, 10, 10, 10]のような記述があった場合、初学者には[0]からはじまっているからこそ array_spliceなどでキー名がわからずとも、配列を操作を容易にできるのではないかと思ってしまいます。 上記2点、配列内でのマイナス値の扱い方、配列の添字が[0]以外からはじまる理由がよくわかりません。 分かる方いらっしゃいましたら教えて下さい。よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • 配列の現在のインデックス数を取得したい

    要素を自分でどんどん追加できる動的配列を作りたいんです。 最初に、単語数の限界を101個にしようと Dim word(100) As String にし、 最初から単語帳に入れている単語を6個にしようと word(0) = "long" word(1) = "short" word(2) = "fast" word(3) = "slow" word(4) = "blight" word(5) = "dark" と書きました。 つまり、宣言での要素数と、実際に存在する要素数に違いがあります。 ここにword(6)、word(7)・・・と追加していくようにしたいのです。 この時、「現在の存在するインデックス番号の最大値(一番最初は5)」を取得するにはどうやればいいのでしょうか? この値(仮にxとする)を取得したうえで、 newarray = x + 1 と、配列に要素を追加したいと思っています。 説明が分かりにくくて申し訳ありません。 どうぞよろしくお願いします。

  • ある数値以上の値があるセルを取得したい

    エクセルの関数で、ある数値以上の値があるセルの位置を取得したいのです。 範囲B2:B11に任意の数値が入っているものとします。 その中で、仮に3以上の値が出現するセルの位置を取得する場合、どのような関数を用いればよろしいでしょうか? 数値をぴったり3に限定なら、=MATCH(3,B2:B11,0) で、範囲内で何番目にあるかわかりますが、3以上となると 補助列を用意し、=B2>3のような式を各セルに入れて、TRUEの位置を=MATCH(TRUE,A2:A11,0) で取得するくらいしか思いつきません。 ご教示ください。

  • $GETが取得できない場合に指定の値を使う

    PHPでURLから変数を取得できるGETというのがありますがURLにこの値が指定されていない場合に指定した値を使うことは可能でしょうか? つまりこういうことです。 $aaa = $_GET['bbb']; としている場合にURLを ~/index.php?bbb=0000 とした場合は aaa=0000 となりますが、 ~/index.php としかしなかった場合はaaaの値は取得できずにエラーになってしまうため、このaaaの値を強制的に1111に指定し aaa=1111 としてphpプログラムを続行させたいのです。 そのようなことはできますか?

    • ベストアンサー
    • PHP
  • タブで囲まれた数値を取得するには?

    $fp_r = popen('grep -c \'\t2\t\' '.$fileName,"r"); 現在PHPで上記のようなファイルからある文字列を取得するプログラムを作成していますが、そのファイルの中に タブ2タブ と表示されたものがありこの値をとりたいのですが、 上記のコマンドではうまくとれません。 やはり、一度、配列に落とさなければいけないのでしょうか?? なぜこのような変な取り方をしたいかというと、 他にも年月日など、いろいろな数値があり、 普通に、数値のみでは値が多すぎて間違った答えになってしまうからです。

  • 二次元配列のインデックスについて

    基礎的な質問かもしれませんが、ネットで調べたのですが、うまく回答が見つからなかったので、教えて下さい。 VB.netで二次元配列を扱っているのですが、この要素はどこにあるのかを知りたいのです。 一次元配列でしたら、Indexof を使えば、どこのインデックスに配置されているかが分かると思うのですが、 二次元配列の場合は、どうすればインデックス数が分かるのでしょうか。 例えば、列は0で固定だけど、どこの行にこの要素が格納されているか分からないから、行番号を知りたいと言うときです。 よろしくお願いいたします。

  • インデックス(index)関数を用いて

    ある数値配列をもったファイルがあります。(100個ほど数値があるとしてください)その中から、自分でプログラムを作る際に指定した連続した配列(7、8個程度だと考えてくだされば結構です)を探し、それが見つかった場所から配列の最後までを表示するプログラムを作りたいんですが、どのようにしたらいいんでしょうか? インデックスindexだけでは、指定した文字が存在するかしないかの判断はできると思われるんですが。 実行する際には、以下のようにするつもりです。 プログラムファイル名.pl データファイル(数値配列)名.txt 検索する数値列(ここでは簡単に表示するために1234567)としておきます。 わかりにくくてすいませんが、回答よろしくお願いします。

このQ&Aのポイント
  • 羽毛田丈史さんの「地球に乾杯」の中で分からないパーカッションの音があります。
  • その音の正体はビブラスラップ的でもなく、金属的でもない可能性があります。
  • また、生の打楽器ではなくサンプリング音の可能性も考えられます。
回答を見る