Spec-Zone.ru › CakePHP 3.4

Класс 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|null
    Ссылка на ресурс подключения к сокету
  • $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 (включить)

Возвращает

булево
True при успехе

Выбрасывает

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

См. также

stream_socket_enable_crypto

host()source public

host( )

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

Возвращает

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

lastError()source public

lastError( )

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

Возвращает

string|null
Последняя ошибка

read()source public

read( integer $length 1024 )

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

Параметры

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

Возвращает

mixed
Данные сокета

reset()source public

reset( array|null $state null )

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

Параметры

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

Возвращает

boolean
True при успехе

setLastError()source public

setLastError( integer $errNum , string $errStr )

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

Параметры

integer $errNum
Код ошибки
string $errStr
Строка ошибки

write()source public

write( string $data )

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

Параметры

string $data
Данные для записи в сокет.

Возвращает

integer
Записанные байты.

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

_configDelete()source protected

_configDelete( string $key )

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

Параметры

string $key
Ключ для удаления.

Исключение

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

_configRead()source protected

_configRead( string|null $key )

Читает ключ конфигурации.

Параметры

string|null $key
Ключ для чтения.

Возвращает

mixed

_configWrite()source protected

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

Записывает ключ конфигурации.

Параметры

string|array $key
Ключ для записи.
mixed $value
Значение для записи.
boolean|string $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']);

Устарело

3.4.0 используйте setConfig()/getConfig() вместо этого.

Параметры

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

Возвращает

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

Исключение

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

configShallow()source public

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

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

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

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

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

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

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

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

Параметры

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

Возвращает


$this

getConfig()source public

getConfig( string|null $key null , mixed $default null )

Возвращает конфигурацию.

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

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

$this->getConfig();

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

$this->getConfig('key');

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

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

Чтение со значением по умолчанию:

$this->getConfig('some-key', 'default-value');

Параметры

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

Возвращает

mixed
Значение конфигурации для чтения.

setConfig()source public

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

Устанавливает конфигурацию.

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

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

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

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

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

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

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

Параметры

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

Возвращает


$this

Исключение

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

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

$_connectionErrorssource

protected array

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

[]

$_defaultConfigsource

protected array

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

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

$_encryptMethodssource

protected 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

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

false

$connectionsource

public resource|null

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

$descriptionsource

public string

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

'Remote DataSource Network Socket Interface'

$encryptedsource

public boolean

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

false

$lastErrorsource

public array

Эта переменная содержит массив с последним кодом ошибки (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.4/class-Cake.Network.Socket.html

Spec-Zone.ru

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