English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

دليل دروس PHP الأساسية

دليل دروس PHP المتقدمة

PHP & MySQL

دليل مرجع PHP

استخدام دالة fsockopen() في PHP و أمثلة

دليل مرجع PHP HTTP

يفتح دالة fsockopen() اتصال شبكة أو اتصال سكك صوتية Unix.

النحو

مورد fsockopen ( string $hostname[, int $port = -1[, int &$errno[, string &$errstr[, float $timeout = ini_get("default_socket_timeout")]]]] )

تعريف والاستخدام

يُستخدم لفتح اتصال سكك صوتية عبر الإنترنت أو سكك صوتية Unix.

إعداد اتصال سكك صوتية إلى المضيف المحدد (hostname).
دعم PHP أنواع التحويلات السكك الصوتية التالية قائمة التحويلات السكك الصوتية المدعومة (Socket Transports) قائمة. يمكنك أيضًا الحصول على أنواع التحويلات السكك الصوتية المدعومة باستخدام stream_get_transports().
بالافتراض، سيتم فتح اتصال套 الموجه في الوضع المزود بالتحديد. ولكن يمكنك تحويله إلى الوضع غير المزود بالتحديد باستخدام stream_set_blocking().
stream_socket_client() يشبه بشكل كبير، ويعرض إعدادات أكثر تقدماً، بما في ذلك وضع غير منغلق والقدرة على تقديم سياق.

القيمة المعدة

 ستعيد fsockopen() ملف اليد، يمكن استخدامه بعد ذلك من قبل وظائف ملف أخرى (مثل fgets()، fgetss()، fwrite()، fclose() و feof()) إذا فشلت الدعوة، فإنها ستعود FALSE.

ملاحظة: إذا كان اسم المستضيف غير قابل للوصول، فإنه سيتم إرسال رسالة خطأ مستوى التحذير (E_WARNING).

المعلمات

رقمالمعلمات والشرح
1

hostname

إذا تم تثبيت OpenSSL، فيجب أن تضيف بداية الاتصال البروتوكول ssl:// أو tls:// إلى عنوان اسم المستضيف الخاص بك، لاستخدام اتصالات العملاء SSL أو TLS القائمة على بروتوكول TCP/IP مع المستضيف البعيد.

2

port

رقم المنفذ. إذا تم إرسال هذا المعامل إلى -1، فإن ذلك يعني عدم استخدام المنفذ، مثل unix://.

3

errno

يتم حفظ رقم خطأ النظام المستخدم في إدعاء connect() المستوى النظامي.

4

errstr

سيتم إرجاع معلومات رسائل الأخطاء كنص.

5

timeout

 إعداد وقت الاتصال، وحدة القياس ثانية. 

مثال عبر الإنترنت

جرب المثال التالي

<?php
   $connection = fsockopen("ar.oldtoolbag.com", 80, $errno, $errstr, 30);
   
   if (!$connection) {
      echo "$errstr ($errno)";
      \n";
   }
      $out = "GET / HTTP/1.1\r\n";
      $out .= "Host: ar.oldtoolbag.com\r\n";
      $out .= "Connection: Close\r\n\r\n";
      
      fwrite($connection, $out);
      
      while (!feof($connection)) {
         echo fgets($connection, 128);
      }
      fclose($connection);
   }
?>

فتح الاتصال في المثال أعلاه

دليل مرجع PHP HTTP