0

私はcakephp 2.xに取り組んでおり、androidからjsonのfromatで私のwebappにデータを送信しています

データをprint_rすると、$data変数でデータを取得しています

  配列 (
     [SMS] => [[+16063934284、こんにちは、1、1372671157000]]
  )
  

この配列の各要素にアクセスしたい、または各要素を個別の変数に保存したい..たとえば、このようなことをしたい

   $number = ['sms'][0]

申し訳ありませんが、私は配列で週を過ごしているので、どうすればこれを行うことができますか

4

5 に答える 5

1

応答が次のような場合、これは有効な JSON ではありません。

[sms] => [[ '+16063934284', 'こんにちは', 1, 1372671157000 ]]

これで関数を使用できるようjson_decodeになったので、次のようになります。

Array
(
    [0] => Array
        (
            [0] => 16063934284
            [1] => 123
            [2] => 1
            [3] => 1372671157000
        )

)

後で、foreach()新しい配列の要素を反復処理するために使用できます。

これが実際の例です:

于 2013-07-01T10:49:04.267 に答える
0

配列内の値を区切るには、 explode()関数を使用できます。

explode(Array_name);
于 2013-07-01T10:58:55.043 に答える
0

内部のjsonデータ$data['sms']は正しいjsonではありません。この文字列を手動で解析するか、Android アプリで正しい json を生成する必要があります。データを解析する場合は、次のコードを使用します。

$sms = str_replace('[[', '', $data['sms']);
$sms = str_replace(']]', '', $sms);
$sms = explode(', ', $sms);
print_r($sms);

出力でわかるように、 $sms はすべての属性を含む配列です。

于 2013-07-01T10:47:21.810 に答える