phpで配列の最初の要素のキーを取得するスマートな方法

phpで配列の最初の要素のキーを取得するスマートな方法
0
@sc_yoshinaga
@uechoco 空配列だとNULL返ってきます。(1)のパターンで先にリセットするのと一緒。ご無沙汰でーす!
うえちょこ🐤\(:D 」∠)_ @uechoco
@sc_yoshinaga けっこうスッキリした書き方でいいですね! そしてお久しぶりです
@sc_yoshinaga
内部でreset()されちゃうからresetするのと大してかわんないけど。
@sc_yoshinaga
@uechoco key(array_slice($array, 0, 1)); これでどう? $arrayは配列であれば空でもOK
Kousuke Ebihara @co3k
@uechoco スマートさゼロですが array_shift(array_flip($data));
えありすっ♪ @aerith
というか空かどうかはその前にたしかめよう。
ばりばり @balibali
@uechoco foreach ($data as $name => $gomi) break; とか
えありすっ♪ @aerith
@uechoco いや reset じゃなくてcurrent でいいじゃんね
えありすっ♪ @aerith
@uechoco array_keys でやるんだったら 0 で取ると空のとき怒られるから $key = reset(array_keys($data)); とかするくらいかなあ。
うえちょこ🐤\(:D 」∠)_ @uechoco
できそうですが他と比べてパッと見でちょっと分かりにくかも知れないですね RT @hiromi2424: @uechoco array_search(curent($array), $array) とか。引数の順序は自信ないでし
ひろみ @hiromi2424
捻りすぎた。current(array_keys(でいいじゃん。
Daisuke Katsura @casui
@uechoco あぁ、あとリファレンスによるとkeyはポインタを移動しないらしいのでresetナシでよいぽいよ。ポインタが先頭にあることが保証されてるならkeyがスマートかもね。
ひろみ @hiromi2424
@uechoco array_search(curent($array), $array) とか。引数の順序は自信ないでし
Daisuke Katsura @casui
@uechoco list($name) = array_keys($data); かなぁ。
うえちょこ🐤\(:D 」∠)_ @uechoco
array_shift()があるならarray_key_shift()も欲しくなるなぁ。。。 #php
うえちょこ🐤\(:D 」∠)_ @uechoco
@sotarok たしかにreset()が先だ。(1)派がいて安心。変なことしてるのかと思って。。。
うえちょこ🐤\(:D 」∠)_ @uechoco
@aerith reset($data);list($key, $value) = each($data);reset($data); でポインタが元通り。each()よりはkey()のほうがスマートな気がするかなぁ
えありすっ♪ @aerith
@uechoco あ、配列のポインタは進んじゃうけど。
Sotaro Karasawa🍺 @sotarok
@uechoco まさに今そんなことをやっていたw (1) だなー、でも reset() が先じゃね?
うえちょこ🐤\(:D 」∠)_ @uechoco
【緩募】phpで配列の最初の要素のキーを取得するスマートな方法。 / とりあえず自分で考えた方法は(1) $name=key($data);reset($data) OR (2) $keys=array_keys($data);$name=$keys[0];

コメント

コメントがまだありません。感想を最初に伝えてみませんか?

ログインして広告を非表示にする
ログインして広告を非表示にする