Latest web development tutorials

الحالات خدمة الويب

أي تطبيق يمكن أن يكون لها مكونات خدمة ويب.

الفئة إنشاء خدمة الويب والبرمجة لغة مستقلة.

هذا الفصل وسوف نقدم للاستخدام تمديد الصابون PHP لإنشاء خدمة ويب.

الصابون واثنين من أوضاع التشغيل، NO-اختصار واختصار.

  • NO-اختصار الوضع: لنقل المعلومات إلى استخدام معلمات.
  • وضع اختصار: استخدام اسم ملف اختصار كمعلمة، واستخراج المعلومات المطلوبة من اختصار الخدمة.

خدمة ويب PHP: مثال واحد

قبل البدء مثيل، ونحن بحاجة إلى تحديد ما إذا كان لتثبيت تمديد PHP SOAP. انظر phpinfo، الرسالة التالية يظهر بالفعل تثبيت ملحقات SOAP:

في هذا المثال، سوف نستخدم PHP الصابون لإنشاء خدمة ويب بسيطة.

رمز الملقم ملفServer.php على النحو التالي:

<?php 
// SiteInfo 类用于处理请求
Class SiteInfo
{
    /**
     *    返回网站名称
     *    @return string 
     *
     */
    public function getName(){
        return "本教程";
    }

    public function getUrl(){
        return "www.w3big.com";
    }
}

// 创建 SoapServer 对象
$s = new SoapServer(null,array("location"=>"http://localhost/soap/Server.php","uri"=>"Server.php"));

// 导出 SiteInfo 类中的全部函数
$s->setClass("SiteInfo");
// 处理一个SOAP请求,调用必要的功能,并发送回一个响应。
$s->handle();
?>

كود ملفClient.php العميل على النحو التالي:

<?php
try{
  // non-wsdl方式调用web service
  // 创建 SoapClient 对象
  $soap = new SoapClient(null,array('location'=>"http://localhost/soap/Server.php",'uri'=>'Server.php'));
  // 调用函数 
  $result1 = $soap->getName();
  $result2 = $soap->__soapCall("getUrl",array());
  echo $result1."<br/>";
  echo $result2;
} catch(SoapFault $e){
  echo $e->getMessage();
}catch(Exception $e){
  echo $e->getMessage();
}

ثم نحن زيارة الموقع: //localhost/soap/Client.php، نتائج الإخراج هي كما يلي: