Spec-Zone.ru › CakePHP 3.3

Класс Socket

Класс CakePHP для подключения к сокету сети.

Базовый класс ядра для сетевого взаимодействия.

Cake\Network\Socket использует Cake\Core\InstanceConfigTrait
Пространство имен: Cake\Network
Расположение: Network/Socket.php

Краткое описание свойств

  • $_connectionErrors protected
    array

    Используется для захвата предупреждений о подключении, которые могут возникать при ошибках SSL, например.

  • $_defaultConfig protected
    array
    Настройки конфигурации по умолчанию для подключения к сокету
  • $_encryptMethods protected
    array
    Содержит все доступные методы шифрования
  • $connected public
    boolean
    Это логическое значение содержит текущее состояние класса Socket
  • $connection public
    resource
    Ссылка на ресурс подключения к сокету
  • $description public
    string
    Описание объекта
  • $encrypted public
    boolean
    Истинно, если поток сокета зашифрован после вызова Cake\Network\Socket::enableCrypto()
  • $lastError public
    array
    Эта переменная содержит массив с последним кодом ошибки (num) и строкой (str)

Унаследованные свойства

  • _config, _configInitialized

Краткое описание методов

  • __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
    Сброс состояния экземпляра Socket в его начальное состояние (до выполнения Object::__construct)
  • setLastError() public
    Установление последней ошибки.
  • write() public
    Запись данных в сокет.

Подробное описание методов

__construct()source public

__construct( array $config [] )

Конструктор.

Параметры

массив $config необязательно []
Конфигурация сокета, которая будет объединена с базовой конфигурацией

См. также

\Cake\Network\Socket::$_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( )

Подключение сокета к указанному хосту и порту.

Возвращает

логическое значение
Успех

Исключения

Cake\Network\Exception\SocketException

context()source public

context( )

Получение контекста соединения.

Возвращает

null|массив
Null, если нет соединения, массив, если есть.

disconnect()source public

disconnect( )

Разрыв соединения сокета с текущим подключением.

Возвращает

логическое значение
Успех

enableCrypto()source public

enableCrypto( string $type , string $clientOrServer 'client' , boolean $enable true )

Шифрование текущего потока сокета, используя один из определенных методов шифрования

Параметры

строка $type
может быть 'ssl2', 'ssl3', 'ssl23' или 'tls'
строка $clientOrServer необязательно 'client'
может быть 'client', 'server'. По умолчанию 'client'
логическое значение $enable необязательно true
включить или выключить шифрование. По умолчанию включено (true)

Возвращает

логическое значение
Истина при успехе

Исключения

InvalidArgumentException
При выборе неверного метода шифрования.
Cake\Network\Exception\SocketException
При попытке включить SSL/TLS

См. также

stream_socket_enable_crypto

host()source public

host( )

Получение имени хоста текущего соединения.

Возвращает

строка
Имя хоста

lastError()source public

lastError( )

Получение последней ошибки в виде строки.

Возвращает

строка|null
Последняя ошибка
END_OF_DOCUMENT_MARKER

read()source public

read( integer $length 1024 )

Считывает данные из сокета. Возвращает false, если данные недоступны или соединение не может быть установлено.

Параметры

целое число $length необязательный 1024
Необязательная длина буфера для чтения; по умолчанию 1024

Возвращаемое значение

смешанный
Данные сокета

reset()source public

reset( array|null $state null )

Сбрасывает состояние экземпляра этого сокета в его начальное состояние (до выполнения Object::__construct).

Параметры

массив|null $state необязательный null
Массив с ключами и значениями для сброса

Возвращаемое значение

логическое значение
True при успехе

setLastError()source public

setLastError( integer $errNum , string $errStr )

Устанавливает последнюю ошибку.

Параметры

целое число $errNum
Код ошибки
строка $errStr
Строка ошибки

write()source public

write( string $data )

Записывает данные в сокет.

Параметры

строка $data
Данные, которые нужно записать в сокет

Возвращаемое значение

логическое значение
Успех

Методы, используемые из Cake\Core\InstanceConfigTrait

_configDelete()source protected

_configDelete( string $key )

Удаляет один ключ конфигурации

Параметры

строка $key
Ключ для удаления.

Выбрасывает

Cake\Core\Exception\Exception
если пытаетесь перезаписать существующую конфигурацию

_configRead()source protected

_configRead( string|null $key )

Чтение переменной конфигурации

Параметры

строка|null $key
Ключ для чтения.

Возвращаемое значение

смешанный

_configWrite()source protected

_configWrite( string|array $key , mixed $value , boolean|string $merge false )

Запись переменной конфигурации

Параметры

строка|массив $key
Ключ для записи.
смешанный $value
Значение для записи.
boolean|строка $merge необязательный false

True для рекурсивного слияния, 'shallow' для простого слияния, false для перезаписи, по умолчанию false.

Выбрасывает

Cake\Core\Exception\Exception
если пытаетесь перезаписать существующую конфигурацию

config()source public

config( string|array|null $key null , mixed|null $value null , boolean $merge true )

Использование

Чтение всей конфигурации:

$this->config();

Чтение определенного значения:

$this->config('key');

Чтение вложенного значения:

$this->config('some.nested.key');

Установка определенного значения:

$this->config('key', $value);

Установка вложенного значения:

$this->config('some.nested.key', $value);

Обновление нескольких параметров конфигурации одновременно:

$this->config(['one' => 'value', 'another' => 'value']);

Параметры

строка|массив|null $key необязательный null
Ключ для получения/установки или полный массив конфигураций.
смешанный|null $value необязательный null
Значение для установки.
boolean $merge необязательный true
Рекурсивное слияние или перезапись существующей конфигурации, по умолчанию true.

Возвращаемое значение

смешанный
Значение конфигурации для чтения, или сам объект при операциях записи.

Выбрасывает

Cake\Core\Exception\Exception
При попытке установить недопустимый ключ.

configShallow()source public

configShallow( string|array $key , mixed|null $value null )

Сливает предоставленную конфигурацию с существующей конфигурацией. В отличие от config(), которая выполняет рекурсивное слияние для вложенных ключей, этот метод выполняет простое слияние.

Установка определенного значения:

$this->config('key', $value);

Установка вложенного значения:

$this->config('some.nested.key', $value);

Обновление нескольких параметров конфигурации одновременно:

$this->config(['one' => 'value', 'another' => 'value']);

Параметры

строка|массив $key
Ключ для установки или полный массив конфигураций.
смешанный|null $value необязательный null
Значение для установки.

Возвращаемое значение


$this Объект.

Подробное описание свойств

$_connectionErrorssource

protected массив

Используется для захвата предупреждений о подключении, которые могут возникать, например, при ошибках SSL.

[]

$_defaultConfigsource

protected массив

Настройки конфигурации по умолчанию для подключения к сокету

[
    'persistent' => false,
    'host' => 'localhost',
    'protocol' => 'tcp',
    'port' => 80,
    'timeout' => 30
]

$_encryptMethodssource

protected массив

Содержит все доступные методы шифрования

[
    // @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 логическое значение

Это булево значение содержит текущее состояние класса Socket

false

$connectionsource

public ресурс

Ссылка на ресурс подключения к сокету

null

$descriptionsource

public строка

Описание объекта

'Remote DataSource Network Socket Interface'

$encryptedsource

public boolean

True, если поток сокета зашифрован после вызова Cake\Network\Socket::enableCrypto()

false

$lastErrorsource

public массив

Эта переменная содержит массив с номером последней ошибки (num) и строкой (str)

[]

© 2005–2017 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/3.3/class-Cake.Network.Socket.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API