PHP三種模擬POST方式總結

2021-08-27 16:42:12 字數 1652 閱讀 4738

<?php

/* * php模擬post提交[三種方式]

*/$remote_sever = ''; //curl other

$remote_path = '/data.php';//curl other

$remote_sever = 'www.test.com'; //socket

$remote_path = '/data.php';//socket

$post_arr = array(1,3,4,5,7,9,10=>array('name','age','***'));

$post_string = dataencode($post_arr);

//$post_string = "name=stelin&age=16";

//$post_string = "age=34&name%5b%5d=3&name%5b%5d=4&name%5b%5d=5";

$result = request_by_socket($remote_sever,$remote_path,$post_string);//已通過測試

//$result = request_by_curl($remote_sever,$post_string); //已通過測試

//$result = request_by_other($remote_sever,$post_string); //已通過測試

var_dump($result);

/** * socket版本

* 使用方法:

* request_by_socket('facebook.cn','/restserver.php',$post_string);

*/function request_by_socket($remote_server, $remote_path, $post_string, $port = 80, $timeout = 30)

} fclose($fp);

if($_server['server_software']!='microsoft-iis/6.0') $result = substr($result, 0, $len);

return $result;

} /**

* curl版本

* 使用方法:

* request_by_curl('',$post_string);

*/function request_by_curl($remote_server, $post_string)

/*** 其它版本

* 使用方法:

* request_by_other('',$post_string);

*/function request_by_other($remote_server, $post_string)

/*** post資料組合,url傳遞多維陣列,格式化

* * @internal

* @param 陣列 $data

* @param 字串 $keyprefix

* @param 字串 $keypostfix

* @return 字串

*/function dataencode($data, $keyprefix = '', $keypostfix = '')

return $vars;

}

三種方法教你如何用PHP模擬post提交資料

php模擬post傳值在日常的工作中用到的不是很多,但是在某些特定的場合還是經常用到的。下面,我整理了三種php模擬post傳值的方法,file get contents curl和socket。第一種 file get contents來模擬post phpfunction file get co...

三種方法教你如何用PHP模擬post提交資料

php模擬post傳值在日常的工作中用到的不是很多,但是在某些特定的場合還是經常用到的。下面,我整理了三種php模擬post傳值的方法,file get contents curl和socket。第一種 file get contents來模擬post phpfunction file get co...

php混編的三種方式

在w3school 上學php,看到第一句就是 php 檔案可包含文字 html 標籤以及指令碼 在後來的學習別人的 發現在需要html 的php指令碼中,多用這麼幾種方法 第一種是在html中加php。大段大段的html 中,在各個需要執行php的地方。這種方法在asp的程式中比較常見。例子 co...