


À propos de l'architecture simple de l'implémentation du service Web en PHP
Cet article présente principalement quatre méthodes architecturales simples et des exemples d'implémentation de services Web en PHP. Les amis dans le besoin peuvent s'y référer
1 : le propre SOAP de PHP
Tous les services Web incluent le côté serveur (serveur) et client (cliente).
Pour utiliser le propre savon de PHP, vous devez d'abord installer et activer l'extension. Regardons le code spécifique ci-dessous
Tout d'abord, il s'agit de l'implémentation côté serveur :
<?php class test { function show() { return 'the data you request!'; } } function getUserInfo($name) { return 'fbbin'; } //实例化的参数手册上面有,这个是没有使用wsdl的,所以第一个参数为null,如果有使用wsdl,那么第一个参数就是这个wsdl文件的地址。 $server = new SoapServer(null, array('uri' ='http://soap/','location'='http://localhost/test/server.php')); $server->setClass('test'); //$server->addFunction('getUserInfo'); $server->handle(); ?>
Ensuite, le client
$soap = new SoapClient(null, array('location'='http://localhost/test/server.php','uri' ='http://soap/')); echo $soap->show(); //得到:'the data you request!' //echo $soap->getUserInfo('sss');
C'est aussi simple que cela. , ce n'était qu'un exemple très simple. En fait, de nombreux mécanismes de communication sont mis en œuvre de cette manière !
//////////////////////////////////////////// /// ///////////////////////////////
Deux : PHPRPC
Premier coup sur le site officiel (http ://www.phprpc.org/zh_CN/) Allez télécharger la dernière version de phprpc Après la décompression, il y aura les fichiers pertinents (fichiers serveur et client) comme suit :
Fichiers serveur :
dhparams dhparams.php phprpc_server.php bigint.php compat.php phprpc_date.php xxtea.php
Fichiers clients :
phprpc_client.php bigint.php compat.php phprpc_date.php xxtea.php
Nous mettons les fichiers serveur dans le dossier serveur, puis mettons les fichiers clients dans le dossier client, puis créons un nouveau fichier (server.php) dans le dossier du serveur en tant que service, puis créez un nouveau fichier (client.php) sur le client en tant que client. Les codes respectifs sont les suivants :
Côté serveur :
<?php include_once"phprpc_server.php"; //加载phprpc文件 $server = new PHPRPC_Server(); $server->add('getUser'); $server->setDebugMode(true); $server->start(); function getUser( ) { return ‘the data you request!'; }
Côté client :
[code] <?php include_once "phprpc_client.php"; $client = new PHPRPC_Client('http://127.0.0.1/phpservice/phprpcserver/server.php'); $data = $client->getUser(); var_dump($data); //得到:the data you request!
Après avoir mentionné wsdl ci-dessus, nous parlerons de la façon de le générer.
//////////////////////////////////////////// /// ///////////////////////////////
Trois : NUSOAP open source
Allez d'abord en ligne. Téléchargez la dernière version de nusoap. La dernière version est la 0.9.5. Après la décompression, vous obtiendrez un dossier lib respectivement dans le serveur et le client, puis les créerez séparément sur le serveur et le client. Les fichiers server.php et client.php servent de fichiers de communication.
Les fichiers côté serveur sont les suivants :
<?php ini_set("soap.wsdl_cache_enabled", 0);//关闭缓存 require_once("lib/nusoap.php"); //加载nusoap文件 $server = new soap_server; $server->configureWSDL('nusoasp');//设定服务的名称,使用的wsdl来通信,如果不适用wsdl将会更简单,网上有很多的例子 $server->register('getUserInfo', array('name'="xsd:string", 'email'="xsd:string"), array('return'="xsd:string")); $HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : ''; $server->service( $HTTP_RAW_POST_DATA ); function getUserInfo($name, $email) { return ‘the data you request!'; }
Les fichiers côté client sont les suivants :
require_once("lib/nusoap.php"); $client = new soapclient('http://localhost/phpservice/nusoapserver/server.php?wsdl'); $pagram = array('fbbin', 'fbbin@foxmail.com'); $string = $client->call('getUserInfo', $pagram); //得到:the data you request!
///////////// ////// ///////////////////////////////////////// ////////// //////////
Quatre : HessianPHP
hessian En fait, je pense personnellement que ce n'est pas un webservice, ça ne peut être que dit être similaire. Car il n’a pas les caractéristiques d’un webservice. Il prend en charge de nombreuses langues. Il ne nous reste plus qu'à étudier la version php de HessianPHP. La dernière version à télécharger est la v2.0.3. Après la décompression, vous obtiendrez un répertoire src, qui est un dossier principal que nous devons utiliser.
Nous l'avons renommé HessianPHP et l'avons placé respectivement sur le serveur et le client, puis avons créé les fichiers server.php et client.php respectivement.
Côté serveur :
<?php include_once 'HessianPHP/HessianService.php';//加载核心文件 class TestService { public function __construct() { } public function add($numa, $numb) { return $numa + $numb; } public function check() { return 'fbbiin@gmail.com'; } } $test = new TestService(); $hessian = new HessianService( $test, array('displayInfo' => true) ); $hessian->handle();//注意这里不是网上的$hessian->service(),可能是版本不一样,改了吧!我也是看了源码才知道! ?>
Côté client :
<?php include_once 'HessianPHP/HessianClient.php'; $url = "http://localhost/phpservice/hessianserver/server.php"; $options = new HessianOptions(); $client = new HessianClient( $url, $options ); $num = $client->add( 3, 5 ); echo $num;//得到:8; echo $client->check();//得到:fbbiin@gmail.com;
Les quatre méthodes ci-dessus sont des méthodes de communication de services Web couramment utilisées dans le processus de développement Web. Le plus couramment utilisé est nusoap. Personnellement, je pense que phprpc est en fait assez bon. Celui-ci est fondamentalement similaire à nusoap en termes de performances. Cependant, phprpc est commercialement facturé. Il existe également hessianPHP, qui semble utiliser Java et utilise une méthode binaire pour transmettre des flux de données. En fait, chacun a ses propres mérites. Pour des informations plus détaillées, veuillez consulter Baidu et Google.
Ce qui suit concerne la génération de fichiers wsdl.
La méthode la plus couramment utilisée et relativement sûre pour communiquer sur un service Web est d'utiliser wsdl. Ce type de fichier peut être écrit par soi-même, mais il ne semble pas possible pour certains experts de l'écrire, nous en avons donc besoin. pour utiliser un outil.zend studio pour générer des fichiers wsdl.
Ensuite, nous allons générer un fichier WSDL, Fichier->Nouveau—>Autre—>Service Web—>WSDL, afin de pouvoir créer un nouveau fichier WSDL, comme indiqué dans la figure.
Ensuite on modifie le fichier WSDL, zeng studio nous fournit des opérations visuelles, bien sur si Si vous êtes bons dans ce domaine, bien sûr, vous pouvez modifier le code du fichier. En fait, il n'y a que quelques choses, et ce ne sera pas trop difficile si vous les comprenez.
Après cette étape, le fichier WSDL est fondamentalement utilisable, mais il y a deux problèmes auxquels il faut prêter attention :
Après cela Étape, le test peut échouer, peut-être parce qu'il n'y a pas de liaison. Cela doit parfois être fait manuellement. Cliquez simplement avec le bouton droit sur la liaison et sélectionnez Générer du contenu de liaison (la petite case au milieu des deux grandes cases).
La deuxième chose à laquelle il faut prêter attention est le cache WSDL de php Lors des tests, vous devez généralement désactiver le cache WSDL, sinon vous risquez d'utiliser le fichier WSDL d'origine au lieu du fichier mis à jour. Il existe deux façons de désactiver le cache. La première consiste à définir directement soap.wsdl_cache_enabled = 0 dans php.ini ; la seconde consiste à ajouter une instruction dans le fichier php, ini_set("soap.wsdl_cache_enabled", "0"). ;
Après cela, vous pouvez tester et appeler en toute sécurité votre programme serveur.
C'est tout, OK !
Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de tout le monde. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !
Recommandations associées :
À propos du temps de formatage personnalisé php
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et

Si vous êtes un développeur PHP expérimenté, vous aurez peut-être le sentiment d'y être déjà allé et de l'avoir déjà fait. Vous avez développé un nombre important d'applications, débogué des millions de lignes de code et peaufiné de nombreux scripts pour réaliser des opérations.

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Une chaîne est une séquence de caractères, y compris des lettres, des nombres et des symboles. Ce tutoriel apprendra à calculer le nombre de voyelles dans une chaîne donnée en PHP en utilisant différentes méthodes. Les voyelles en anglais sont a, e, i, o, u, et elles peuvent être en majuscules ou en minuscules. Qu'est-ce qu'une voyelle? Les voyelles sont des caractères alphabétiques qui représentent une prononciation spécifique. Il y a cinq voyelles en anglais, y compris les majuscules et les minuscules: a, e, i, o, u Exemple 1 Entrée: String = "TutorialSpoint" Sortie: 6 expliquer Les voyelles dans la chaîne "TutorialSpoint" sont u, o, i, a, o, i. Il y a 6 yuans au total

Liaison statique (statique: :) implémente la liaison statique tardive (LSB) dans PHP, permettant à des classes d'appel d'être référencées dans des contextes statiques plutôt que de définir des classes. 1) Le processus d'analyse est effectué au moment de l'exécution, 2) Recherchez la classe d'appel dans la relation de succession, 3) il peut apporter des frais généraux de performance.

Quelles sont les méthodes magiques de PHP? Les méthodes magiques de PHP incluent: 1. \ _ \ _ Construct, utilisé pour initialiser les objets; 2. \ _ \ _ Destruct, utilisé pour nettoyer les ressources; 3. \ _ \ _ Appel, gérer les appels de méthode inexistants; 4. \ _ \ _ GET, Implémentez l'accès à l'attribut dynamique; 5. \ _ \ _ SET, Implémentez les paramètres d'attribut dynamique. Ces méthodes sont automatiquement appelées dans certaines situations, améliorant la flexibilité et l'efficacité du code.
