Files
kiri-client/TSwooleClient.php
T
2026-06-12 23:57:21 +08:00

42 lines
888 B
PHP

<?php
namespace Kiri;
trait TSwooleClient
{
/**
* @return array
*/
private function settings(): array
{
$sslCert = $this->ssl_cert_file;
$sslKey = $this->ssl_key_file;
$sslCa = $this->ca;
$params = [];
if ($this->connect_timeout > 0) {
$params['timeout'] = $this->connect_timeout;
}
[$proxy, $port] = [$this->proxyHost, $this->proxyPort];
if (!empty($proxy) && $port > 0) {
$params['http_proxy_host'] = $proxy;
$params['http_proxy_port'] = $port;
}
if (empty($sslCert) || empty($sslKey) || empty($sslCa)) {
return $params;
}
$params['ssl_host_name'] = $this->host;
$params['ssl_cert_file'] = $this->ssl_cert_file;
$params['ssl_key_file'] = $this->ssl_key_file;
$params['ssl_verify_peer'] = TRUE;
$params['ssl_cafile'] = $sslCa;
return $params;
}
}