PHP5.2.4を使用しています。
配列で一部分を引き抜く関数は次のようなarray_spliceで、
$arr = array('a' => 1, 'b' => 2, 'c' => 3);
$arr2 = array_splice($arr, 1/*←ここに'b'と書きたい*/, 1);
print_r($arr2);//←Array ( [b] => 2 )
print_r($arr);//Array ( [a] => 1 [c] => 3 )
これは第2引数に添え字の番号(上の例だと1)を指定しなければいけないのですが、
そうではなくて、キー('a'や'b'など)を指定して引き抜きたいです。
そのような関数などはあるのでしょうか?
No.1ベストアンサー
- 回答日時:
もっと効率的なものはある気がしますがおもいつき
<?
$arr = array('a' => 1, 'b' => 2, 'c' => 3);
$arr2['b'] = $arr['b'];
unset($arr['b']);
print_r($arr2);
print_r($arr);
?>
ご返答ありがとうございます。
たしかに関数が用意されてる必要もないですかね・・・
yambejpさんの例を簡単な自作関数にしちゃえば済みそうですね。
function hash_splice(&$arr, $key)
{
$arr2[$key] = $arr[$key];
unset($arr[$key]);
return $arr2;
}
$arr = array('a' => 1, 'b' => 2, 'c' => 3);
$arr2 = hash_splice($arr, 'b');
print_r($arr2);//←Array ( [b] => 2 )
print_r($arr);//Array ( [a] => 1 [c] => 3 )
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
- PHP 配列の値の更新方法について 1 2022/08/05 09:49
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- PHP ファイルの書き込みについて教えて下さい。 1 2023/03/20 12:01
- JavaScript java keyを配列で表記したい 10 2022/12/01 17:53
- その他(プログラミング・Web制作) listへのappendが出来ない件 1 2022/12/06 21:44
- PHP ランキングを表示する際の画像の大きさを固定することは可能でしょうか? <?php if ( has_ 1 2022/07/21 14:55
- C言語・C++・C# c言語について array[i]-‘0’ これってどーゆー意味ですか? (ちなみに16進数を10進数 5 2022/12/06 18:39
- PHP PHPでCSVを出力するさいに、ループの中で前の行の値を変更したい 3 2022/10/27 17:44
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
foreachで上限回数指定方法また...
-
php 省略可能な引数配列を持つ...
-
Excel VBAでフィルター後の対象...
-
sqlのデーターを『あ行』『か行...
-
VB.NET で 二次元のハッシュは...
-
PHPの配列でわからないことがあ...
-
マッチング処理(1:N)
-
プログラミングのPythonのnoteb...
-
配列をループでたくさん宣言し...
-
CSVファイルの最終行のデー...
-
stdClass Objectを連想配列のよ...
-
プルダウンメニューにDBの内容...
-
多次元配列の計算方法について
-
PHPのPOSTでの半角スペース
-
PHPでユニークIDを作る
-
CSVデータの行数カウントをした...
-
Smartyを使って、テーブルを表示
-
C言語でCSVファイルの行数を読...
-
PHPでテキストファイルの一部を...
-
PHPでCSVの一部の行を編集したい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PHPでこのコード自体に意味は無...
-
マッチング処理(1:N)
-
foreachで上限回数指定方法また...
-
PHP、{}記号の意味
-
PHPで変数名にハイフンを使うに...
-
PHPで連想配列のプルダウンメニ...
-
VB.NET で 二次元のハッシュは...
-
多次元配列を、1次元の配列にす...
-
配列からプルダウン用のHTMLを生成
-
Smartyでインクリメント
-
phpでforeachの中にforeachがあ...
-
foreachとかの勝手な省略?
-
Excel VBAでフィルター後の対象...
-
foreachで配列を、左から縦3列...
-
$_POST受信で必要項目のみを結...
-
リストボックス複数選択抽出方法
-
POSTで渡されるデータの数がわ...
-
ftokが動かない?
-
foreachの間にテーブルの<TR>を...
-
3つの連想配列を交互に代入し...
おすすめ情報