Соц Сеть
Разумеется не можем. Ведь только одна программа может слушать на одном порту. Поэтому да, нужно проверять, не занят ли порт - перед тем, как пытаться привязать к нему слушателя. Собственно, в самом Вашем скрипте такая проверка уже сделана, только Вы вызываете исключение в случае, если привязка не удалась. Если логикой требуется что-то другое - так и укажите, что именно нужно (вывести сообщение, что не удалось и т.п.)
16. EuGen - 06 Июля, 2012 - 13:36:16 - перейти к сообщению
17. Соц Сеть - 06 Июля, 2012 - 18:45:27 - перейти к сообщению
укажите мне путь что мне делать чтобы сколько раз открыл cliend.php столько раз показал все нормально а не выдал ошибку типа сокет не подключен, может другому порту прикрепить, просто я не знаю сколько портов есть у денвера, вот скрипты скажите пожалуйста что менять чтобы нормально работал ?
server.php
server.php
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?
- echo "-= Server =-\n\n";
- $address = '127.0.0.1';
- $port = 10001;
- try {
- echo 'Create socket ... ';
- } else {
- echo "OK\n";
- }
- echo 'Bind socket ... ';
- } else {
- echo "OK\n";
- }
- echo 'Listen socket ... ';
- } else {
- echo "OK\n";
- }
- do {
- echo 'Accept socket ... ';
- } else {
- echo "OK\n";
- }
- $msg = "Hello, Client!";
- echo "Say to client ($msg) ... ";
- echo "OK\n";
- do {
- echo 'Client said: ';
- } else {
- echo $buf."\n";
- }
- continue;
- }
- if ($buf == 'shutdown') {
- break 2;
- }
- echo "Say to client ($buf) ... ";
- echo "OK\n";
- } while (true);
- } while (true);
- } catch (Exception $e) {
- echo "\nError: ".$e->getMessage();
- }
- echo 'Close socket ... ';
- echo "OK\n";
- }
- ?>
client.php
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?
- echo "-= Client =-\n\n";
- $address = '127.0.0.1';
- $port = 10001;
- try {
- echo 'Create socket ... ';
- if ($socket < 0) {
- } else {
- echo "OK\n";
- }
- echo 'Connect socket ... ';
- if ($result === false) {
- } else {
- echo "OK\n";
- }
- echo 'Server said: ';
- echo $out."\n";
- $msg = "Hello, Server!";
- echo "Say to server ($msg) ...";
- echo "OK\n";
- echo 'Server said: ';
- echo $out."\n";
- $msg = 'shutdown';
- echo "Say to server ($msg) ... ";
- echo "OK\n";
- } catch (Exception $e) {
- echo "\nError: ".$e->getMessage();
- }
- echo 'Close socket ... ';
- echo "OK\n";
- }
- ?>