Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk memanggil kaedah sabun php

Bagaimana untuk memanggil kaedah sabun php

藏色散人
藏色散人asal
2021-11-30 11:27:163597semak imbas

panggilan kaedah sabun php: 1. Buka "php_soap.dll" dalam fail php.ini 2. Tanya kaedah perkhidmatan web, parameter dan jenis data 3. Sambungkan rentetan xml mengikut dokumen pembangunan ; 4. Hanya jalankan kod dalam pelayar.

Bagaimana untuk memanggil kaedah sabun php

Bagaimana untuk memanggil kaedah sabun php?

Memanggil sabun di bawah PHP untuk merealisasikan dok

Proses pelaksanaan panggilan SOAP di bawah PHP5

Artikel ini mengambil pembangunan antara muka tempahan telefon bimbit iPhone 6 sebuah syarikat sebagai contoh untuk memperkenalkan pelaksanaan panggilan SOAP di bawah proses PHP5.

1. Konsep asas

SOAP (Simple Object Access Protocol ) Protokol Akses Objek Mudah ialah protokol mudah untuk bertukar-tukar maklumat dalam persekitaran terpencar atau diedarkan Ia adalah protokol berasaskan XML Ia merangkumi empat bahagian: Sampul surat mentakrifkan perihalan kandungan mesej. Apa, siapa yang menghantarnya, siapa yang harus menerima dan memprosesnya dan rangka kerja cara memprosesnya peraturan pengekodan SOAP (pengekodan peraturan), digunakan untuk mewakili contoh jenis data yang perlu digunakan oleh aplikasi SOAP RPC representasi (RPC representasi), yang mewakili protokol untuk panggilan prosedur jauh dan tindak balas SOAP, yang menggunakan protokol asas untuk bertukar maklumat.

WSDL (Bahasa Penerangan Perkhidmatan Web) ialah XML penerangan Format XML standard untuk perkhidmatan Web, WSDL dicadangkan oleh pembangun seperti Ariba, Intel, IBM dan Microsoft. Ia mentakrifkan operasi dan mesej yang berkaitan yang dihantar dan diterima oleh perkhidmatan Web tertentu dalam cara abstrak yang bebas daripada bahasa tertentu. Mengikut definisinya, anda belum boleh menganggap WSDL sebagai bahasa definisi antara muka objek Contohnya, seni bina aplikasi seperti CORBA atau COM akan menggunakan bahasa definisi antara muka objek. WSDL kekal neutral protokol, tetapi ia mempunyai sokongan terbina dalam untuk mengikat SOAP, sekali gus mewujudkan pautan yang tidak boleh dipisahkan dengan SOAP. Jadi, apabila saya membincangkan WSDL dalam artikel ini, saya akan menganggap bahawa anda menggunakan SOAP sebagai protokol komunikasi anda.

Walaupun SOAP dan WSDL adalah dua standard utama untuk perkhidmatan web, ia tidak semestinya disambungkan dan boleh digunakan secara bebas. Hubungan antara mereka adalah serupa dengan hubungan antara HTTP dan Html. Yang pertama ialah protokol, dan yang terakhir ialah perihalan Pelayan Web.

2. Konfigurasi di bawah PHP5

Dalam fail konfigurasi php php.ini, cari

extension=php_soap.dll

dan alih keluar tanda sebelumnya, dan kemudian mulakan semula Perkhidmatan web

3. Kaedah perkhidmatan web pertanyaan, parameter dan jenis data

Antara muka kemasukan pesanan syarikat telekomunikasi wilayah ialah http://***.******.com/ services/AcceptedBusiness?wsdl
Kami menggunakan kaedah __geunctions() dan __getTypes() SoapClient untuk melihat kaedah, parameter dan jenis data antara muka
Hanya antara muka yang disenaraikan dalam __getFunctions boleh dipanggil oleh sabun.
Buat kod soap.php dalam direktori akar

<?php
header("content-type:text/html;charset=utf-8");try {    $client = new SoapClient("http://***.******.com/services/AcceptedBusiness?wsdl");    print_r($client->__getFunctions());    print_r($client->__getTypes());  
} catch (SOAPFault $e) {    print $e;
}
?>

Selepas dijalankan dalam penyemak imbas: http://localhost/soap.php, hasil yang dikembalikan adalah seperti berikut

Array(
    [0] => ArrayOf_xsd_anyType introduceAcceptedBusiness(string $c3, string $c4, string $linkman, string $linknum, string $num, string $idcard, string $remark, string $address)
    [1] => ArrayOf_xsd_anyType introduceAcceptedBusinessByAiZhuangWei(string $subname, string $linkphone, string $idcard, string $address, string $businesstype, string $marketcode, string $surveycode, string $commanager, string $commanagerphone, string $bendiwang, string $fenju, string $zhiju, string $remark)
    [2] => string introduceAcceptedBusinessByStandardInterface(string $xmlStr)
    [3] => string introduceAcceptedBusinessByCallOut(string $xmlStr)
    [4] => string introduceAcceptedBusinessByYddj(string $xmlParam)
    [5] => ArrayOf_xsd_anyType queryAcceptedBusinessByAiZhuangWei(string $surveycode, string $starttime, string $endtime)
    [6] => string queryCallOutOrderByConfig(string $xmlParam)
)Array(
    [0] => anyType ArrayOf_xsd_anyType[]
)

di mana Terdapat kaedah introduceAcceptedBusinessByStandardInterface(string $xmlStr), yang akan menjadi antara muka yang akan digunakan dalam dokumen pembangunan Parameter ialah rentetan xml

Selain itu, beberapa antara muka menyebut pengesahan SoapHeader , yang perlu ditambah_ kaedah _setSoapHeaders, untuk butiran, sila semak http://php.net/manual/zh/soapclient.setsoapheaders.php


4 >Langkah ini memerlukan dokumen pembangunan Sambungkan rentetan xml, dan kemudian hantarkannya sebagai parameter introduceAcceptedBusinessByStandardInterface

untuk mencipta acceptedbusiness.php dengan kandungan berikut:


Selepas melaksanakan dalam penyemak imbas, kembali
<?php
header("content-type:text/html;charset=utf-8");try {    $client = new SoapClient(&#39;http://***.*******.com/services/AcceptedBusiness?wsdl&#39;);    $xml = "
    <?xml version=&#39;1.0&#39; encoding=&#39;UTF-8&#39; ?>
    <PACKAGE>
      <C3>**电信</C3>
      <C4></C4>
      <LINKMAN>张三</LINKMAN>
      <LINKNUM>13412341234</LINKNUM>
      <LINKADDRESS>广东深圳</LINKADDRESS>
      <REMARK>iPhone 6</REMARK>
      <CHANNEL></CHANNEL>
      <GRIDCODE>1111111111111111111111111111111</GRIDCODE>
      <AGENTCODE>2111</AGENTCODE>
      <KEY>1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111</KEY>
    </PACKAGE>
  ";    $return = $client->introduceAcceptedBusinessByStandardInterface($xml);    print_r($return);
} catch (SOAPFault $e) {    print_r(&#39;Exception:&#39;.$e);
}
?>

Pembelajaran yang disyorkan :《
<?xml version="1.0" encoding="UTF-8"?>
<PACKAGE>
    <STATUS>0</STATUS>
    <REASON>入单成功!</REASON>
    <ORDERSEQ>2014100905523549742</ORDERSEQ>
</PACKAGE>
Tutorial Video PHP

Atas ialah kandungan terperinci Bagaimana untuk memanggil kaedah sabun php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Apakah maksud -= dalam phpArtikel seterusnya:Apakah maksud -= dalam php