Tutoriel sur le...login
Tutoriel sur les services Web
auteur:php.cn  temps de mise à jour:2022-04-11 14:41:17

Instance de service Web



Toute application peut avoir un composant Web Service.

La création de Web Service n'a rien à voir avec le type de langage de programmation.

Dans ce chapitre, nous présenterons comment utiliser l'extension SOAP de PHP pour créer un service Web.

SOAP a deux modes de fonctionnement, NO-WSDL et WSDL.

  • Mode NO-WSDL : Utilisez les paramètres pour transmettre les informations à utiliser.

  • Mode WSDL : Utilise le nom du fichier WSDL comme paramètre et extrait les informations requises par le service du WSDL.


Une instance : PHP Web Service

Avant de démarrer l'instance, nous devons déterminer si PHP a installé l'extension SOAP. Vérifiez phpinfo, les informations suivantes apparaissent indiquant que l'extension SOAP a été installée :

Dans cet exemple, nous utiliserons PHP SOAP pour créer un service Web simple.

Serveur Serveur.php Le code du fichier est le suivant :

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

    public function getUrl(){
        return "www.php.cn";
    }
}

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

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

Client Client.php Le code du fichier est le suivant :

<?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();
}


Site Web PHP chinois