2016-07-03 15 views
0

cURLコマンドをPHPに正しく変換しようとしていますが、正しいコマンドが見つからないようです。私はこのコマンドをcURLで実行することができますが、TROPOで実行する必要があり、いくつかのスクリプトオプションしかありません。cURLからPHPに相当する

私はPHPを試しています。

curl https://api.particle.io/v1/devices/310029000547353138383138/setNum \ -d access_token=e650d0dec0476de7d64b23110fed31dcb3cbxxxx \ -d args=2085555555 

私の試しに何が欠けていますか?

<?php 
    function submitValue() { 
     $ch = curl_init("https://api.particle.io/v1/devices/310029000547353138383138/setNum"); 
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
     curl_setopt($ch, CURLOPT_POST, true); 
     curl_setopt($ch, CURLOPT_HTTPHEADER, 'access_token=e650d0dec0476de7d64b23110fed31dcb3cbxxxx&"args=2085555555"');                  
    ); 

     $output = curl_exec($ch); 

     if (curl_getinfo($ch, CURLINFO_HTTP_CODE) != '200') { 
     return null; 
     } 
     return $output; 
    } 
?> 
+0

'*>'はタイプミスか、元のコードにありますか? ( '?>'にする必要があります) –

+0

@Matt面白いことに、 '*'と '?'はキーボードの互いに離れています。どのようにして**タイプミス** – nmnsud

+0

@nmnsud:D私はもちろん、元のコードのエラーですか、それはスタックオーバーフローに転記するときに導入されたのですか? –

答えて

1

てみてください以下のcURLコマンドを使用するには:

curl --data "access_token=e650d0dec0476de7d64b23110fed31dcb3cbxxxx&args=2085555555" https://api.particle.io/v1/devices/310029000547353138383138/setNum 

が更新https://superuser.com/a/149335

からこの答えを得た:

ここで私はPHPのコードを提供しています

$data = json_decode(array(
     "access_token" => "e650d0dec0476de7d64b23110fed31dcb3cbxxxx", 
     "args" => "2085555555" 
)); 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, 'https://api.particle.io/v1/devices/310029000547353138383138/setNum'); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
$output = curl_exec($ch); 
curl_close($ch); 

を希望助けてくれるでしょう

+0

それはうまくいく。しかし、私はそれのためのPHPのソリューションが表示されません。 – runfastman

+0

私はPHPコード – nmnsud

+0

で私の答えを更新しました。それはうまくいきましたが、私の読書では、CURLOPT_POSTFIELDSはURLにパラメータを追加するようなものだと思っていました。 – runfastman

関連する問題