1

これは、先ほど尋ねたJSON 出力で配列値のみを表示する必要があることに関連しています。

次のような値のみを表示したいだけです

[
"autoComplete",
"ColdFusion",
"jQuery Mobile"
];

背景: サーバー (言語: PHP) からデータを取得するために Jquery モバイル経由で AJAX 呼び出しを使用しています。Phonegap アプリケーションでhttps://github.com/commadelimited/autoComplete.jsを使用したいと考えています。

ご意見をお聞かせください!私はJSONが初めてです。

4

2 に答える 2

1

json_encode を使用する場合、数値インデックスが 0 から始まる配列 (連想配列ではなく、0 で始まり、数値が欠落していないことを意味します) は、js オブジェクト リテラルではなく JavaScript 配列に変換されます。PHP で array_values を使用して、数値的にインデックス付けされた配列からすべての値を取得できます。

<?php
//a generic array
$a = array(
    'foo'=>'bar',
    'one'=>'two',
    'three'=>'four');

//display the array in php
var_dump($a);
echo '<br>';

//json encode it
$json = json_encode($a);
var_dump($json);
echo '<br>';

//json encode just the values
$json = json_encode(array_values($a));
var_dump($json);

http://codepad.viper-7.com/hv06zn

于 2013-02-27T17:27:10.307 に答える
0

ジョナサンに感謝します。

しかし、私は以下のような解決策を見つけました。他の人にも役立つことを願っています。

$result = mysql_query($sql) or die ("Query error: " . mysql_error());
$records = array();

while($row = mysql_fetch_assoc($result)) {
  $records[] = $row["title"];
}


mysql_close($con);
echo json_encode($records);
于 2013-02-27T17:41:30.757 に答える