PHP Soket을 사용하여 게시물 데이터를 보내려고합니다.
게시 방법
예컨대 $postData = array('value1', 'value2', 'value3');
나는 "myweb.php"페이지 PHP 소켓을 사용하려면 "의 index.php"에서 $ postData를를 보낼
.
미리 감사드립니다.
PHP Soket을 사용하여 게시물 데이터를 보내려고합니다.
게시 방법
예컨대 $postData = array('value1', 'value2', 'value3');
나는 "myweb.php"페이지 PHP 소켓을 사용하려면 "의 index.php"에서 $ postData를를 보낼
.
미리 감사드립니다.
데이터를 어떻게 든 직렬화해야합니다. PHP 스크립트간에 serialize() 및 unserialize()을 사용할 수 있습니다. 그러나 다른 사용자가 데이터를 사용한다고 생각하면 JSON이 선호 될 수 있습니다. json_encode() 및 json_decode()
AJAX 요청을 작성하려고하지 않습니까? 소켓은 서버 측에서 만들어 지므로 웹 페이지에서 소켓을 생성하는 것은 그리 특이하지는 않지만 돌아 서서 로컬 리소스에 대한 HTTP 연결을 설정하는 것은 이상합니다.
function http_request($request_url, $type='get', $data=array()) {
$url = parse_url($request_url);
$host = $url['host'];
$path = $url['path'];
$query = $url['query'];
$path .= $query ? '?'. $query : '';
$parameter = $sep = '';
if (!empty($data)) {
foreach ($data as $key => $value){
$parameter .= $sep . urlencode($key) .'='. urlencode($value);
$sep = '&';
}
}
if (strtolower($type) == 'get') {
$path .= $parameter;
$out = "GET {$path} HTTP/1.1\r\n";
$out .= "Accept: */*\r\n";
$out .= "Accept-Language: zh-cn\r\n";
$out .= "User-Agent: {$_SERVER['HTTP_USER_AGENT']}\r\n";
$out .= "Host: {$host}\r\n";
$out .= "Connection: Close\r\n\r\n";
} else {
$out = "POST {$path} HTTP/1.1\r\n";
$out .= "Accept: */*\r\n";
$out .= "Accept-Language: zh-cn\r\n";
$out .= "Content-Type: application/x-www-form-urlencoded\r\n";
$out .= "User-Agent: {$_SERVER['HTTP_USER_AGENT']}\r\n";
$out .= "Host: {$host}\r\n";
$out .= 'Content-Length: '.strlen($parameter)."\r\n";
$out .= "Connection: Close\r\n\r\n";
$out .= $parameter;
}
$fp = fsockopen($host, 80, $errno, $errstr, 30);
if ($fp) {
fwrite($fp, $out);
fclose($fp);
}
}
아니요, 저는 아약스 요청을하고 있지 않습니다. 나는 단순히 HTTP 요청을 호출하려고한다. GET으로 데이터를 전달할 수 있습니까? –
나는 대답을 얻었다. HTTP_Request 및 어댑터를 소켓으로 사용하여 데이터를 목적지에 게시 할 수 있습니다. 감사 ! –