Класс CakeSocket
Класс CakePHP для сетевых сокетов.
Базовый класс ядра для сетевого взаимодействия.
Прямые подклассы
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Network/CakeSocket.php
Резюме свойств
-
$_baseConfigprotectedБазовые параметры конфигурации для подключения к сокетуarray -
$_connectionErrorsprotectedarrayИспользуется для захвата предупреждений о подключении, которые могут возникать при наличии ошибок SSL, например.
-
$_encryptMethodsprotectedСодержит все доступные методы шифрованияarray -
$configpublicПараметры конфигурации для подключения к сокетуarray -
$connectedpublicЭто логическое значение содержит текущее состояние класса CakeSocketboolean -
$connectionpublicСсылка на ресурс подключения к сокетуresource -
$descriptionpublicОписание CakeSocketstring -
$encryptedpublicИстина, если поток сокета зашифрован после вызова CakeSocket::enableCrypto()boolean -
$lastErrorpublicЭта переменная содержит массив с последним номером ошибки (num) и строкой (str)array
Резюме методов
- __construct() publicКонструктор.
- __destruct() publicДеструктор, используется для отключения от текущего подключения.
- _connectionErrorHandler() protected
socket_stream_client() не заполняет errNum или $errStr при возникновении ошибок подключения, например, при отказе проверки SSL.
- _setSslContext() protectedНастройка параметров контекста SSL.
- address() publicПолучение IP-адреса текущего подключения.
- addresses() publicПолучение всех IP-адресов, связанных с текущим подключением.
- connect() publicПодключение сокета к указанному хосту и порту.
- context() publicПолучение контекста подключения.
- disconnect() publicОтключение сокета от текущего подключения.
- enableCrypto() publicШифрование текущего потока сокета, используя один из определенных методов шифрования.
- host() publicПолучение имени хоста текущего подключения.
- lastError() publicПолучение последней ошибки в виде строки.
- read() public
Чтение данных из сокета. Возвращает false, если данные недоступны или подключение не может быть установлено.
- reset() publicСброс состояния экземпляра этого сокета в начальное состояние (до выполнения CakeObject::__construct)
- setLastError() publicУстановка последней ошибки.
- write() publicЗапись данных в сокет.
Подробности метода
__construct()source public
__construct( array $config array() )
Конструктор.
Параметры
- массив
$configнеобязательно array() - Конфигурация сокета, которая будет объединена с базовой конфигурацией
См. также
CakeSocket::$_baseConfig__destruct()source public
__destruct( )
Деструктор, используется для отключения от текущего подключения.
_connectionErrorHandler()source protected
_connectionErrorHandler( integer $code , string $message )
socket_stream_client() не заполняет errNum или $errStr при возникновении ошибок подключения, например, при отказе проверки SSL.
Вместо этого нам необходимо обработать эти ошибки вручную.
Параметры
- целое число
$code - Код.
- строка
$message - Сообщение.
_setSslContext()source protected
_setSslContext( string $host )
Настройка параметров контекста SSL.
Параметры
- строка
$host - Имя хоста, к которому осуществляется подключение.
address()source public
address( )
Получение IP-адреса текущего подключения.
Возвращает
строкаIP-адрес
addresses()source public
addresses( )
Получение всех IP-адресов, связанных с текущим подключением.
Возвращает
массивIP-адреса
connect()source public
connect( )
Подключение сокета к указанному хосту и порту.
Возвращает
логическое значениеУспех
Вызывает
SocketExceptioncontext()source public
context( )
Получение контекста подключения.
Возвращает
null|массивNull, если подключения нет, массив в случае наличия.
disconnect()source public
disconnect( )
Отключение сокета от текущего подключения.
Возвращает
логическое значениеУспех
enableCrypto()source public
enableCrypto( string $type , string $clientOrServer 'client' , boolean $enable true )
Шифрование текущего потока сокета, используя один из определенных методов шифрования.
Параметры
- строка
$type - Тип, который может быть одним из 'sslv2', 'sslv3', 'sslv23' или 'tls'.
- строка
$clientOrServerнеобязательно 'client' - Может быть одним из 'client', 'server'. По умолчанию 'client'.
- логическое значение
$enableнеобязательно true - Включить или отключить шифрование. По умолчанию включено (true).
Возвращает
логическое значениеTrue в случае успеха
Вызывает
InvalidArgumentExceptionПри выборе неверной схемы шифрования.
SocketExceptionПри попытке включения SSL/TLS.
См. также
stream_socket_enable_cryptolastError()source public
lastError( )
Получает последнюю ошибку в виде строки.
Возвращаемое значение
string|nullПоследняя ошибка
read()source public
read( integer $length 1024 )
Считывает данные из сокета. Возвращает false, если данные недоступны или соединение не может быть установлено.
Параметры
- integer
$lengthнеобязательный 1024 - Необязательная длина буфера для чтения; по умолчанию 1024
Возвращаемое значение
mixedДанные сокета
reset()source public
reset( array $state null )
Сбрасывает состояние этого экземпляра Socket до его начального состояния (до выполнения CakeObject::__construct)
Параметры
- array
$stateнеобязательный null - Массив с ключами и значениями для сброса
Возвращаемое значение
booleanTrue при успехе
setLastError()source public
setLastError( integer $errNum , string $errStr )
Устанавливает последнюю ошибку.
Параметры
- integer
$errNum - Код ошибки
- string
$errStr - Строка ошибки
write()source public
write( string $data )
Записывает данные в сокет.
Параметры
- string
$data - Данные для записи в сокет
Возвращаемое значение
booleanУспех
Подробное описание свойств
$_baseConfigsource
protected array
Базовые параметры конфигурации для подключения к сокету
array(
'persistent' => false,
'host' => 'localhost',
'protocol' => 'tcp',
'port' => 80,
'timeout' => 30
) $_connectionErrorssource
protected array
Используется для захвата предупреждений о подключении, которые могут возникнуть, например, при ошибках SSL.
array()
$_encryptMethodssource
protected array
Содержит все доступные методы шифрования
array(
// @codingStandardsIgnoreStart
'sslv2_client' => STREAM_CRYPTO_METHOD_SSLv2_CLIENT,
'sslv3_client' => STREAM_CRYPTO_METHOD_SSLv3_CLIENT,
'sslv23_client' => STREAM_CRYPTO_METHOD_SSLv23_CLIENT,
'tls_client' => STREAM_CRYPTO_METHOD_TLS_CLIENT,
'sslv2_server' => STREAM_CRYPTO_METHOD_SSLv2_SERVER,
'sslv3_server' => STREAM_CRYPTO_METHOD_SSLv3_SERVER,
'sslv23_server' => STREAM_CRYPTO_METHOD_SSLv23_SERVER,
'tls_server' => STREAM_CRYPTO_METHOD_TLS_SERVER
// @codingStandardsIgnoreEnd
) $connectedsource
public boolean
Это булево значение содержит текущее состояние класса CakeSocket
false
$encryptedsource
public boolean
True, если поток сокета зашифрован после вызова CakeSocket::enableCrypto()
false
$lastErrorsource
public array
Эта переменная содержит массив с последним номером ошибки (num) и строкой ошибки (str)
array()
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/2.9/class-CakeSocket.html