将json值变为php变量问题

时间:2017-07-05 10:15:01

标签: php json

我尝试使用一些短信api,我必须得到消息ID。首先,这是我的api代码。

$url = 'https://rest.nexmo.com/sms/json?' . http_build_query(
    [
      'api_key' =>  'xxx',
      'api_secret' => 'xxx',
      'to' => 'xxx',
      'from' => 'xxx',
      'text' => 'xxx'
    ]
);
        $ch = curl_init($url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $response = curl_exec($ch);

当我使用此代码时,它正在发送短信并返回响应。这是json的回应。

{ "message-count": "1", "messages": [{ "to": "905075214049", "message-id": "0C000000440A086C", "status": "0", "remaining-balance": "1.52250000", "message-price": "0.01910000", "network": "28603" }] }

我使用print_r函数来查看json数据的结构。就在这里。

stdClass Object
(
    [message-count] => 1
    [messages] => Array
        (
            [0] => stdClass Object
                (
                    [to] => xxx
                    [message-id] => 0C000000440A086C
                    [status] => 0
                    [remaining-balance] => 1.52250000
                    [message-price] => 0.01910000
                    [network] => 28603
                )

        )

)

我使用此代码将“message-id”添加到我的php值中。

$json_decode = json_decode($response);
$sonuc->messages[0]->message-id;

我的问题是;如果我试图从这个json获得网络部分它的工作原理。但是,如果我尝试获取“message-id”部分,它在屏幕上仅返回0。我真的不知道如何获得完整的消息ID。请帮忙。

2 个答案:

答案 0 :(得分:3)

job: # use regexp only: - /^issue-.*$/ job: # use special keywords only: - tags - triggers - schedules char不允许用作属性或变量名。如果你想获得这个属性,可以这样做:

-

答案 1 :(得分:0)

您使用的是错误的变量名称。尝试使用

userID