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

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

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

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

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

Q&A

解決済

3回答

1831閲覧

PHPで変数に配列をカンマ区切りで格納したい(編集後)

cocytus

総合スコア12

PHP

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

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

0グッド

0クリップ

投稿2016/09/25 16:43

編集2016/10/02 15:23
お世話になります。 PHPについての質問です。 色々調査はしたのですが、自分の思うような結果にならないのでご教授下さい。 申し訳ありません、説明が具体的ではなかったので編集しました。 ``` コード ``` ###前提・実現したいこと 配列に入っている値($keyと$value)を変数に入っている値と比較したい。 そのために前回は、配列を変数にカンマ切りで格納しようと考えていました。(全ての値を取り出したかった) 下のようなif文で判定したかったのです。 $job = array("戦士" => "ウォーリア", "僧侶" => "メイジ"); $job_check = "戦士"; $job_serch = "ウォーリア"; if($job[$job_check] == $job_serch){ echo "Yes"; }else{ echo "No"; } //戦士とウォーリアが紐づいていればYes(この処理で正しいのかはわかりませんが…) この処理をforeachなどでループさせて、配列の中に入っているすべてのデータを比較したいです。 ``` ###前回のこと 自分でもうまく説明できずに困っているので、まとまり次第編集したいと思います。

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

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

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

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

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

kei344

2016/09/25 17:30

「カンマ切りで変数に格納」がどのようにしたいのかがわかりません。
ttyp03

2016/09/26 01:46

どういう結果になればいいのか、具体的な例を挙げてください。
kei344

2016/10/02 17:27

回答が付いた質問の編集は慎重に行ってください。新たなコードについては「追記」してください。
guest

回答3

0

何がしたいのか、いまいちよくわかりませんが、

var_export で解決できることですかね。

投稿2016/09/25 17:10

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

cocytus

2016/10/02 15:26

回答ありがとうございます。 検討します。
guest

0

ベストアンサー

最大限好意的に解釈してこんな感じでしょうか?

PHP

1$job_list = ""; 2$job_info = ["戦士" => "ウォーリア","僧侶" => "モンク","魔法使い" => "ウィザード"]; 3ob_start(); 4foreach($job_info as $key=>$val){ 5 if($job_list!=="") $job_list.=","; 6 $job_list.="[\"{$key}\"]=>"; 7 var_dump($val); 8 $job_list.=preg_replace("/[\r\n]+/","",ob_get_contents()); 9 ob_clean(); 10} 11ob_end_clean(); 12print $job_list;

投稿2016/09/26 03:05

yambejp

総合スコア114843

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

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

cocytus

2016/10/02 15:25

大変好意的な解釈ありがとうございます。 たしかに自分のほしい感じのデータはとれました。 回答ありがとうございました。
guest

0

もしかして、explode
なんか違う気がするし、元に戻すなら何もせずに一番上のを使っておけって思うし、なぜforeachするかよくわからない。

投稿2016/09/25 18:25

toutou

総合スコア2050

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

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

cocytus

2016/10/02 15:26

見直してみると自分でも意味不明でした…
toutou

2016/10/02 15:33

$job[$job_check]は何が入ってますか?
toutou

2016/10/02 15:37

ごめん 勘違いだった
toutou

2016/10/02 15:54

$job = array("戦士" => "ウォーリア", "僧侶" => "メイジ"); $job_check = "戦士"; $job_serch = "ウォーリア"; foreach($job as $key=>$value){ if($job[$key] == $job_serch){ echo "Yes"; }else{ echo"No";} } これかなとおもったんだけどほかの人の解答で終わってるなら解答済みにして置いてください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問