Próbuję wysyłać i odbierać dane przez gniazdo PHP.Użyj gniazda PHP do wysyłania i odbierania danych
Evrything jest OK, ale kiedy próbuję wysłać dane PHP nic nie wysyła (Wireshark powiedział mi, że wysłana długość danych wynosiła 0).
Używam tego kodu:
<?php
$address = 'example.com';
$port = 1234;
$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
$sockconnect = socket_connect($sock, $address, $port);
$c = 0;
do {
$c++;
$msg = '<test>Xml data</test>';
socket_write($sock, $msg, strlen($msg));
echo socket_read($sock, 1024 * 100, PHP_NORMAL_READ);
} while ($c < 3);
socket_close($sock);
Czy ktoś może mi pomóc? Dzięki za przeczytanie mojego pytania.
Nie ma żadnych błędów, ale zdalny host robi nie odpowiadaj mi jeszcze raz. Ale działa poprawnie, gdy wysyłam dane przez SocketTest v3.0 – ucha
Czy mój przykład polecenia 'HEAD' działa w twoim systemie? – sanmai
Tak, działa na innych hostach, ale muszę wysyłać tylko dane xml, ponieważ mój host nie odpowiada na żądania HTTP head z żadnego portu z wyjątkiem 1980. Nie odpowiada mi (nawet przy użyciu twojego przykładu) kiedy wysyłam XML dane. – ucha