php fsockopen post json資料

來源:互聯網
上載者:User
php fsockopen 可以 post json資料嗎? 知道的請留下代碼,在此謝過!

回複內容:

php fsockopen 可以 post json資料嗎? 知道的請留下代碼,在此謝過!

因為不清楚你所說的 json 資料具體是想要怎麼提交, 故分以下兩種情況做為展示.

第一種情況: 提交的整個資料就是JSON格式的內容.

1.php

'hello', 'b'=>'world', 'c'=>'漢字');$data = json_encode($post_fields);//轉換為JSON格式的字串$data = array(    'POST /123.php HTTP/1.0',//請求的地址    'Host: localhost',    'Content-type: application/x-www-form-urlencoded',    'Content-length: '. strlen($data),//填充資料長度    '',//要求標頭與資料的分隔字元    $data//填充資料體);//注意修改 網域名稱和連接埠號碼$sock = fsockopen("localhost", 800, $errno, $errstr, 30);if (!$sock) die("$errstr ($errno) ");fwrite($sock, implode("\r\n", $data));$data = '';while(!feof($sock)){//測試檔案指標是否到了檔案結束的位置    $data .= fgets($sock,1024);}fclose($sock);echo $data;

與之對應的123.php檔案的代碼如下:

代碼執行後的結果如下:

HTTP/1.1 200 OKDate: Mon, 21 Sep 2015 06:34:12 GMTServer: Apache/2.4.12 (Win32) PHP/5.6.9X-Powered-By: PHP/5.6.9Content-Length: 118Connection: closeContent-Type: text/html; charset=UTF-8object(stdClass)#1 (3) { ["a"]=> string(5) "hello" ["b"]=> string(5) "world" ["c"]=> string(6) "漢字"}

第二種情況: JSON 格式的資料做為 資料 進行提交.

在上面代碼的基礎上做如下改動:
1.php

$data = 'xyz=' . json_encode($post_fields);//轉換為JSON格式的字串

123.php

執行結果與之前的一樣.

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.