2016-08-16 4 views
0

을 사용하여 전화 유형 및 캐리어를 가져 오기 :내가 Twilio의 전화 검사기 curl 명령에서 특정 데이터를 얻기 위해 노력하고 Twilio 전화 검사기 컬 명령

$cmd='curl -XGET "https://lookups.twilio.com/v1/PhoneNumbers/5551234321'?Type=carrier&Type=caller-name" -u "{AccountSid}:{AuthToken}" '; 
exec($cmd,$result); 

나는 결과를 인 print_r 때, 나는 배열을 얻을.

echo '<pre>'; print_r($result); '</pre>'; 

Array 
(
[0] => {"caller_name": {"caller_name": "JOHN SMITH", "caller_type": "CONSUMER", "error_code": null}, "country_code": "US", "phone_number": "+5551234321", "national_format": "(555) 123-4321", "carrier": {"mobile_country_code": "310", "mobile_network_code": "120", "name": "Sprint Spectrum, L.P.", "type": "mobile", "error_code": null}, "add_ons": null, "url": "https://lookups.twilio.com/v1/PhoneNumbers/+5551234321?Type=carrier&Type=caller-name"} 
) 

특정 값을 PHP 변수로 가져 오는 방법은 무엇입니까? 예 : "이름": "스프린트 스펙트럼, LP", "유형": "모바일" 로 : 나는 시도

$name = "Sprint Spectrum, L.P."; 
$type = "mobile"; 

:

foreach ($result->items as $item) { 
    var_dump($item->carrier->name); 
} 

그러나 오류가 발생합니다 : foreach는 대한 공급 잘못된 인수()

+2

가능한 중복 (http://stackoverflow.com/questions/17995877/get-value-from-json-array-in- [PHP에서 JSON 배열에서 값을 가져 오기] PHP) – WillardSolutions

+0

JSON 인코딩 결과입니다. json_decode 함수를 사용하여 $ result [0]을 json_decode해야합니다 (예를 들어 붙여 넣은 EatPeanutButter 링크 참조). – Julqas

+0

[Twilio PHP 라이브러리] (https://www.twilio.com/docs/libraries/)를 사용해 보시기 바랍니다. PHP). 그것은 당신을 위해이 모든 것을 처리합니다 (그리고 말아 올릴 필요가없는 호출을합니다). – philnash

답변

1

@EatPeanutButter와 @Julqas에게 감사드립니다. 나를 올바른 방향으로 가리켰다.

근무 코드 :의

$json = json_decode($result[0],true); 

$type = $json['carrier']['type']; 

$carrier = $json['carrier']['name'];