• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:配列にダブルクォーテーション付の値をいれたい)

配列にダブルクォーテーション付の値をいれたい

このQ&Aのポイント
  • memberテーブルから抽出したnameKanji配列に、ダブルクォーテーション付の値をいれたい。
  • 配列には最終的に{"田中","斉藤","鈴木"}という値をいれたい。
  • 解決方法を教えてください。

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

  • ベストアンサー
  • shimix
  • ベストアンサー率54% (865/1590)
回答No.3

ANo.1 です。 本題とは無関係ですが、mysql_queryを使っているのが気になります。すでに非推奨ですので、早急にPDOで書き直してください。 http://php.net/manual/ja/mysqlinfo.api.choosing.php またデータベース関数(手続き型)としても「件数を取得してから、その件数までforループで回す」という手順は疑問符です。fetchするまでに件数が不変という前提は危ないと思います。 $array_nameKanji = array(); $sql = "SELECT nameKanji FROM member"; $rs = mysql_query($sql,$conn); while ($rec = mysql_fetch_assoc($rs)) { $array_nameKanji[] = '"' . $rec["nameKanji"] . '"'; } $totalMember = count($array_nameKanji); とすべきでしょう。

hide_momiji
質問者

お礼

アドバイスありがとうございます。 もう少しかんがえて、あらためて質問させていただきます。

その他の回答 (3)

  • memphis
  • ベストアンサー率40% (975/2395)
回答No.4

DBのレコードが既に文字に「”」が付けてませんか? phpMyAdmin などを使ってDBを確認して下さい。

hide_momiji
質問者

お礼

別のところに原因がある気がしてます。 ありがとうございます。 原因不明ですね。 もう少しかんがえて、あらためて質問させていただきます。

  • t_ohta
  • ベストアンサー率38% (5241/13712)
回答No.2

"\"" じゃなくて '"' とシングルクォートでダブルクォートを囲むんじゃダメですか。

hide_momiji
質問者

お礼

やってみたのですが、うまくいきませんでした。 ありがとうございます。 原因不明ですね。 もう少しかんがえて、あらためて質問させていただきます。

  • shimix
  • ベストアンサー率54% (865/1590)
回答No.1

>$array_nameKanji[$i] = "\"" . $rec["nameKanji"] . "\""; >こうしてみると、 >{"""田中""","""斉藤""","""鈴木"""} >となってしまいます。 ちょっと考えられません。下記ソースで試しましたが、そういう現象は再現出来ませんでした。 <?php $rec = array( array('id'=>1, 'nameKanji'=>'田中'), array('id'=>2, 'nameKanji'=>'斉藤'), array('id'=>3, 'nameKanji'=>'鈴木'), ); $array_nameKanji = array(); foreach ($rec as $key=>$val) { $array_nameKanji[] = "\"" . $val['nameKanji'] . "\""; } print_r($array_nameKanji);

hide_momiji
質問者

お礼

ありがとうございます。 原因不明ですね。 もう少しかんがえて、あらためて質問させていただきます。

関連するQ&A