"; è¿æ¯åºåååçè¯·æ±æ°æ®
$send_len = 0;
do
{
//åé
if (($sends = socket_write($socket, $request, strlen($request))) === false)
{
throw new Exception("[PPython Error] socket write error.", SOCKET_ERROR);
}
$send_len += $sends;
$request = substr($request, $sends);
}while ($send_len < $req_len);
//æ¥æ¶
$response = "";
while(true)
{
$recv = "";
if (($recv = socket_read($socket, 1400)) === false)
{
throw new Exception("[PPython Error] socket read error.", SOCKET_ERROR);
}
if ($recv == "")
{
break;
}
$response .= $recv;
//echo "{$response}
";
}
//å
³é
socket_close($socket);
$rsp_stat = substr($response, 0, 1); //è¿åç±»å "S":æå "F":å¼å¸¸
$rsp_msg = substr($response, 1); //è¿åä¿¡æ¯
//echo "è¿åç±»å:{$rsp_stat},è¿åä¿¡æ¯:{$rsp_msg}
";
if ($rsp_stat == "F")
{
//å¼å¸¸ä¿¡æ¯ä¸ç¨ååºåå
throw new Exception("[PPython Error] Receive Python exception: ".$rsp_msg, LAJP_EXCEPTION);
}
else
{
if ($rsp_msg != "N") //è¿åévoid
{
//ååºåå
return unserialize($rsp_msg);
}
}
}
?>