Ответы, которые я нашел на этот вопрос (например, здесь , здесь и здесь ), включают pfsockopen (), который, кажется, предназначен длянелокальные сокетные соединения.Однако код, который я написал до сих пор, использует php для доступа к серверу C ++ через локальное соединение.Я хочу, чтобы это соединение было постоянным (чтобы я мог использовать его для Comet, между прочим).Вот моя непостоянная версия:
<?php
session_start();
...
if (($sock = socket_create(AF_UNIX, SOCK_STREAM,0)) === false)
{
echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n";
exit();
}
$sess_id = $_SESSION['sess_id'];
$sock_str = '/tmp/sockdir/' . $sess_id; //The socket is named after the php session, not important
if (socket_connect($sock, $sock_str) === false)
{
echo "socket_connect() to " . $sock_str . " failed: reason: " . socket_strerror(socket_last_error($sock)) . "\n";
socket_close($sock);
exit();
}
$msg = $_GET['message'];
// ... do things with $msg
socket_close($sock);
?>
Теперь я не могу просто сохранить '$ sock' как переменную $ _SESSION и просто обращаться к ней каждый раз, когда вызывается этот скрипт, я обнаружил.Любые советы о том, что я могу сделать, чтобы превратить это в постоянное соединение?