Spec-Zone.ru › CakePHP 3.2

Класс 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

    Читать данные из сокета. Возвращает ложь, если данные недоступны или подключение не установлено.

  • 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
Данные для записи в сокет

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

boolean
Успех

Методы, используемые из 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']);

Параметры

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->config('key', $value);

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

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

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

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

Параметры

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

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


$this Сам объект.

Подробности свойств

$_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

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

false

$lastErrorsource

public array

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

[]

© 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.
http://api.cakephp.org/3.2/class-Cake.Network.Socket.html

Spec-Zone.ru

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