php 使用curl擴充套件post多維陣列問題

2021-07-11 10:51:17 字數 1567 閱讀 8066

之前使用curl進行伺服器介面請求,一般都是使用一維陣列,**如下:

<?php

$url = ""

$data = array('telnum'=>'1872972***x');

$ch = curl_init ();

curl_setopt ( $ch, curlopt_url, $url );

curl_setopt ( $ch, curlopt_post, 1 );

curl_setopt ( $ch, curlopt_header, 0 );

curl_setopt ( $ch, curlopt_returntransfer, 1 );

curl_setopt ( $ch, curlopt_postfields,$data);

$return = curl_exec ( $ch );

curl_close ( $ch );

由於業務需要 需要post乙個多維陣列過去 如果僅將上述$data引數修改為

$data = array(

'data'=>array(

'telnum' => '1872972***x',

'username'=>'zhang***x',

'pwd'=>'123456',

'code'=>'6217'

));

則會出現如下警告

notice: array to string conversion in /users/zhangsheng/web/test.php on line 33

網上翻了翻 發現了解決辦法  使用http_build_query()函式處理post引數

http_build_query — 生成 url-encode 之後的請求字串

修改**如下

php 使用 curl 傳送 post 資料

作為第三方開發商,經常會需要呼叫平台介面,遠端呼叫,就要用到curl,其實質就是叫呼叫的方法與用到的引數以http post的方式傳送至平台伺服器。簡單的例子 url http 呼叫介面的平台服務位址 post string array a b ch curl init curl setopt ch...

php 使用 curl 傳送 post 資料

作為第三方開發商,經常會需要呼叫平台介面,遠端呼叫,就要用到curl,其實質就是叫呼叫的方法與用到的引數以httppost的方式傳送至平台伺服器。簡單的例子 url http 呼叫介面的平台服務位址 post string array a b ch curl init curl setopt ch,...

php 使用 curl 傳送 post 資料

作為第三方開發商,經常會需要呼叫平台介面,遠端呼叫,就要用到curl,其實質就是叫呼叫的方法與用到的引數以http post的方式傳送至平台伺服器。簡單的例子 呼叫介面的平台服務位址 post string array a b ch curl init curl setopt ch,curlopt ...