transport属性
要求(workerman >= 3.3.4)
设置 نقل الخصائص، والقيم الاختيارية هي tcp و ssl، والافتراضي هو tcp.
عند تعيين transport إلى ssl ، يجب أن يكون PHP قد قام بتثبيت openssl扩展.
عند استخدام Workerman كعميل للاتصال بخادم مع اتصال مشفر ssl (اتصال https، اتصال wss، إلخ)، يجب تعيين هذا الخيار على ssl، كما هو موضح في المثال أدناه.
مثال (اتصال https)
use Workerman\Worker;
use Workerman\Connection\AsyncTcpConnection;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';
$task = new Worker();
// عند بدء العملية، يتم إنشاء كائن اتصال غير متزامن إلى www.baidu.com وإرسال واستقبال البيانات
$task->onWorkerStart = function($task)
{
$connection_to_baidu = new AsyncTcpConnection('tcp://www.baidu.com:443');
// تعيين كاتصال مشفر ssl
$connection_to_baidu->transport = 'ssl';
$connection_to_baidu->onConnect = function(AsyncTcpConnection $connection_to_baidu)
{
echo "نجاح الاتصال\n";
$connection_to_baidu->send("GET / HTTP/1.1\r\nHost: www.baidu.com\r\nConnection: keep-alive\r\n\r\n");
};
$connection_to_baidu->onMessage = function(AsyncTcpConnection $connection_to_baidu, $http_buffer)
{
echo $http_buffer;
};
$connection_to_baidu->onClose = function(AsyncTcpConnection $connection_to_baidu)
{
echo "تم إغلاق الاتصال\n";
};
$connection_to_baidu->onError = function(AsyncTcpConnection $connection_to_baidu, $code, $msg)
{
echo "رمز الخطأ:$code msg:$msg\n";
};
$connection_to_baidu->connect();
};
// تشغيل العامل
Worker::runAll();