質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PDO

PDO(PHP Data Objects)はPHPのデータベース抽象化レイヤーです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

2回答

307閲覧

PHPの配列の作り変え

退会済みユーザー

退会済みユーザー

総合スコア0

PDO

PDO(PHP Data Objects)はPHPのデータベース抽象化レイヤーです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2017/10/13 08:33

ご覧いただきありがとうございます。

php

1array ( 36 => array ( 0 => array ( 'poll_one' => 'test1', 0 => 'test1', 'poll_two' => 'test2', 1 => 'test2', 'poll_three' => 'test3', 2 => 'test3', 'poll_four' => 'test4', 3 => 'test4', 'poll_five' => 'test5', 4 => 'test5', 'poll_six' => 'test6', 5 => 'test6', 'poll_seven' => 'test7', 6 => 'test7', 'poll_eight' => 'test8', 7 => 'test8', ), ), 37 => array ( 0 => array ( 'poll_one' => 'test2-1', 0 => 'test2-1', 'poll_two' => 'test2-2', 1 => 'test2-2', 'poll_three' => 'test2-3', 2 => 'test2-3', 'poll_four' => 'test2-4', 3 => 'test2-4', 'poll_five' => 'test2-5', 4 => 'test2-5', 'poll_six' => 'test2-6', 5 => 'test2-6', 'poll_seven' => 'test2-7', 6 => 'test2-7', 'poll_eight' => 'test2-8', 7 => 'test2-8', ), ), )

上記のような配列があり、idが36,37の配列があるのですが、idが36の配列だけを抜き出して新たに配列を作り変えることはできるのでしょうか?

php

1foreach ($polls as $poll => $values) { 2 if($poll==36){ 3 print_r($poll); //表示結果36 4 } 5}

このprint_rの部分で作り変えれる構文などありましたらご教授ください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

idが36の配列だけを抜き出して新たに配列を作り変える

具体的に何がしたいのかよくわかりませんが。
抜き出す(?)なら$polls[36]を参照すればいいのでは?
作り変える(?)は、どうしたいのかイメージがわきません

PHP

1<?PHP 2$polls =[ 3 36 => [ 4 [ 5 'poll_one' => 'test1', 6 0 => 'test1', 7 'poll_two' => 'test2', 8 1 => 'test2', 9 'poll_three' => 'test3', 10 2 => 'test3', 11 'poll_four' => 'test4', 12 3 => 'test4', 13 'poll_five' => 'test5', 14 4 => 'test5', 15 'poll_six' => 'test6', 16 5 => 'test6', 17 'poll_seven' => 'test7', 18 6 => 'test7', 19 'poll_eight' => 'test8', 20 7 => 'test8', 21 ], 22 ], 23 37 =>[ 24 [ 25 'poll_one' => 'test2-1', 26 0 => 'test2-1', 27 'poll_two' => 'test2-2', 28 1 => 'test2-2', 29 'poll_three' => 'test2-3', 30 2 => 'test2-3', 31 'poll_four' => 'test2-4', 32 3 => 'test2-4', 33 'poll_five' => 'test2-5', 34 4 => 'test2-5', 35 'poll_six' => 'test2-6', 36 5 => 'test2-6', 37 'poll_seven' => 'test2-7', 38 6 => 'test2-7', 39 'poll_eight' => 'test2-8', 40 7 => 'test2-8', 41 ], 42 ], 43 ]; 44 45$a=$polls["36"]; 46print_r($a);

投稿2017/10/13 08:44

yambejp

総合スコア114779

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/10/13 09:53

言葉選びが下手ですみません。 ありがとうございました!
guest

0

「新たに配列を作り変える」の意味が不確定ですが、
同じ配列のキー36を置き換えるのであれば、

PHP

1 $polis[36] = array(.......);

全く別の配列として抜き出すのであれば

PHP

1 $other_polis = $values;

ですかね

投稿2017/10/13 08:42

n884

総合スコア100

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/10/13 09:54

言葉選びが下手ですみません。 ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問