Home Backend Development PHP Tutorial Use of PHP soap extension_PHP tutorial

Use of PHP soap extension_PHP tutorial

Jul 13, 2016 pm 05:50 PM
access object php protocol simple soap use object expand of Simple access

SOAP
1. Simple Object Access Protocol Simple Object Access Protocol
It mainly includes the following four parts:
a) SOAP encapsulation: used to encapsulate the content of the transmitted data, the sending end message, the receiving end information and the processing method to prepare for data transmission.
b) SOAP encoding rules: used to represent the data type and other information of each item in the transmitted data
c) SOAP remote procedure call protocol: a protocol for remote procedure calls and responses
d) SOAP binding protocol: the underlying protocol used to represent information exchange
Ø SOAP application and configuration in PHP5
================================================== =======================
1. PHP 5 adds a built-in SOAP extension, which we call ext/soap. It is provided as part of PHP, so there is no need to download, install and manage separate packages.
2. ext/soap may have been compiled but not loaded, so the PHP configuration needs to be updated so that ext/soap is loaded. Edit php.ini and find the Dynamic Extensions section and add a line of code here to automatically load the extension. On Windows, this line of code is: extension=php_soap.dll
If you have not previously loaded any optional extensions, you may also want to set the extension_dir directive to point to the directory containing the extension libraries (including php_soap ):
extension_dir=”C:/php/ext/” (use forward slash on Windows)
3. After completing the configuration, ext/soap displays:
[soap]
; Enables or disables WSDL caching feature.
soap.wsdl_cache_enabled=1
; Sets the directory name where SOAP extension will put cache files.
soap.wsdl_cache_dir=”/tmp”
; (time to live) Sets the number of second while cached file will be used
; instead of original one.
soap.wsdl_cache_ttl=86400
This configuration controls the WSDL caching feature of the SOAP extension. By default, WSDL description files are cached in the /tmp directory for 24 hours (86400 seconds). Set soap.wsdl_cache_enabled=0 now, otherwise you will encounter some strange behavior when developing your code. After you're done developing, remember to turn on WSDL caching to make your code run faster.
================================================== ======================
SOAP extension library (mainly includes three types of objects)
1. SoapServer: used to define functions that can be called and return response data when creating a PHP server page.
The format is: $soap = new SoapServer($wsdl, $array);
Note: $wsdl is the WSDL file used by SOAP, which is a standard format for describing WebService. Set to NULL to not use the WSDL mode. If you want to use it, you can use ZED to generate it.
$array is the attribute information of SoapServer, which is an array.
Note: $array includes a uri, and encoding, and if it is a client program, it also contains a location.
The 'uri' option is required, but its value can be filled in at will. It can be empty ("), but it cannot be null.
‘encoding’ is necessary for Chinese processing, generally fill in ‘gb2312′ (otherwise an error will occur, because the default is ‘utf-8′).
The addFunction method of this object is used to declare which function can be called by the client,
The syntax format is: $soap -> addFunction($function_name);
The handle method of this object is used to process user input and call the corresponding function, and finally returns the processed result to the client,
The syntax format is: $soap -> handle([$soap_request]);
Note: $soap_request is an optional parameter used to represent the user's request information. If not specified, it means that the server will receive all the user's requests.
2. SoapClient: used to call the SoapServer page on the remote server and implement the call to the corresponding function.
The syntax format is: $soap = new SoapClient($wsdl, $array);
Note: For soap client, the 'location' and 'uri' options are required; 'location' must be the URL of the soap server, which must be accurate, but the uri seems to be filled in casually, but it is best to be consistent with the uri in the soap server. . And 'encoding' is required for Chinese users
After creating the object, calling the function in the server page is equivalent to calling the SoapClient method
The syntax format is: $soap -> user_function($params);
Note: user_function is one or several functions defined on the server side that can be called.
3. SoapFault: used to generate errors that may occur during SOAP access.
The syntax format is: $fault = new SoapFault($faultcode, $faultstring);
Note: $faultcode is a user-defined error code. If it is not defined, it should be HTTP (in my impression). $faultstring is a user-defined error message.
This object will be automatically generated when an error occurs on the server-side page, or the user can create a SoatFault object to obtain the corresponding error information.
After capturing the SoapFault object on the client, you can obtain the error information of the error code through the following code
$fault -> faultcode; // Error code
$fault -> faultstring; // Error message

Example below:
soapserver.php

view source
print
?01. 02.
03.function reserve($arr){
04.return http_build_query($arr);
05.}
06.
07.$soap = new SoapServer(NULL,array('uri'=>'http://www.xhbin.com'));
08.
09.//为对象添加一个用户自定义的函数
10.$soap->addFunction('reserve');
11.
12.$soap->handle();
13.?>
soapclient.php

view source
print
?01. 02.
03.try{
04.
05.$client = new SoapClient(NULL,array('location'=>'http://localhost/exercise/soap/soapserver.php','uri'=>'http://www.xhbin.com'));
06.
07.$arr = array('id'=>3,"tag"=>"PHP MYSQL","search"=>"soap");
08.
09.echo $string = $client->reserve($arr);
10.
11.}catch(SoapFault $fault){
12.
13.echo "FAULT!Code:".$fault->faultcode."String:".$fault->faultstring;
14.
15.}
16.
17.?>
输出的结果为:id=3&tag=PHP+MYSQL&search=soap.
成功。。。

 

摘自 阳光司达

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/478252.htmlTechArticleSOAP 1. Simple Object Access Protocol 简单对象访问协议 主要包括下面四部分: a) SOAP 封装: 用于将传输数据中的内容, 发送端消息, 接收端信息和处理...
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP and Python: Comparing Two Popular Programming Languages PHP and Python: Comparing Two Popular Programming Languages Apr 14, 2025 am 12:13 AM

PHP and Python each have their own advantages, and choose according to project requirements. 1.PHP is suitable for web development, especially for rapid development and maintenance of websites. 2. Python is suitable for data science, machine learning and artificial intelligence, with concise syntax and suitable for beginners.

PHP's Purpose: Building Dynamic Websites PHP's Purpose: Building Dynamic Websites Apr 15, 2025 am 12:18 AM

PHP is used to build dynamic websites, and its core functions include: 1. Generate dynamic content and generate web pages in real time by connecting with the database; 2. Process user interaction and form submissions, verify inputs and respond to operations; 3. Manage sessions and user authentication to provide a personalized experience; 4. Optimize performance and follow best practices to improve website efficiency and security.

The Enduring Relevance of PHP: Is It Still Alive? The Enduring Relevance of PHP: Is It Still Alive? Apr 14, 2025 am 12:12 AM

PHP is still dynamic and still occupies an important position in the field of modern programming. 1) PHP's simplicity and powerful community support make it widely used in web development; 2) Its flexibility and stability make it outstanding in handling web forms, database operations and file processing; 3) PHP is constantly evolving and optimizing, suitable for beginners and experienced developers.

PHP in Action: Real-World Examples and Applications PHP in Action: Real-World Examples and Applications Apr 14, 2025 am 12:19 AM

PHP is widely used in e-commerce, content management systems and API development. 1) E-commerce: used for shopping cart function and payment processing. 2) Content management system: used for dynamic content generation and user management. 3) API development: used for RESTful API development and API security. Through performance optimization and best practices, the efficiency and maintainability of PHP applications are improved.

PHP and Python: Different Paradigms Explained PHP and Python: Different Paradigms Explained Apr 18, 2025 am 12:26 AM

PHP is mainly procedural programming, but also supports object-oriented programming (OOP); Python supports a variety of paradigms, including OOP, functional and procedural programming. PHP is suitable for web development, and Python is suitable for a variety of applications such as data analysis and machine learning.

Why Use PHP? Advantages and Benefits Explained Why Use PHP? Advantages and Benefits Explained Apr 16, 2025 am 12:16 AM

The core benefits of PHP include ease of learning, strong web development support, rich libraries and frameworks, high performance and scalability, cross-platform compatibility, and cost-effectiveness. 1) Easy to learn and use, suitable for beginners; 2) Good integration with web servers and supports multiple databases; 3) Have powerful frameworks such as Laravel; 4) High performance can be achieved through optimization; 5) Support multiple operating systems; 6) Open source to reduce development costs.

Choosing Between PHP and Python: A Guide Choosing Between PHP and Python: A Guide Apr 18, 2025 am 12:24 AM

PHP is suitable for web development and rapid prototyping, and Python is suitable for data science and machine learning. 1.PHP is used for dynamic web development, with simple syntax and suitable for rapid development. 2. Python has concise syntax, is suitable for multiple fields, and has a strong library ecosystem.

PHP and Python: Code Examples and Comparison PHP and Python: Code Examples and Comparison Apr 15, 2025 am 12:07 AM

PHP and Python have their own advantages and disadvantages, and the choice depends on project needs and personal preferences. 1.PHP is suitable for rapid development and maintenance of large-scale web applications. 2. Python dominates the field of data science and machine learning.

See all articles