socket_write
(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
socket_write — Запис у сокет
Опис
socket_write(Socket $socket, string $data, ?int $length = null): int|false
Функцияsocket_write() записує в сокет socket
дані із зазначеного буфера data
Список параметрів
socket
data
Буфер, який буде записано.
length
Необов'язковий параметр length
може вказувати інше число байт, що записуються в сокет. Якщо це число більше, ніж довжина буфера, воно буде мовчки урізано до довжини буфера.
Значення, що повертаються
Повертає кількість байт, успішно записаних у сокет або false
у разі виникнення помилки. Код помилки можна отримати за допомогою функції socket_last_error(). Цей код може бути переданий функції socket_strerror() для отримання текстового опису помилки.
Зауваження :
Цілком нормально для функції socket_write() повертати нуль, що означає, що жодного байта не було записано. Будь ласка, використовуйте оператор
===
для проверки значения на**false
**в случае возникновения ошибки.
список змін
Версия | Опис |
---|---|
8.0.0 | socket тепер екземпляр класу Socket; раніше був ресурсом (resource). |
8.0.0 | length тепер допускає значення null. |
Примітки
Зауваження :
socket_write() не обов'язково записує всі байти із зазначеного буфера. Нормально те, що, залежно від мережевих буферів і т. д., лише кілька даних, навіть один байт, буде записаний, хоча ваш буфер більше. Ви повинні стежити за тим, щоб ненавмисно не забути передати залишок ваших даних.
Дивіться також
- socket_accept() - приймає з'єднання на сокеті
- socket_bind() - Прив'язує ім'я до сокету
- socket_connect() - Починає з'єднання із сокетом
- socket_listen() - Прослуховує вхідні з'єднання на сокеті
- socket_read() - Читає рядок максимальну довжину байт із сокету
- socket_strerror() - Повертає рядок, що описує помилку сокету