您的位置:首页 > 编程语言 > PHP开发

Laravel SoapClient

2015-08-13 17:40 639 查看
Add 
artisaninweb/laravel-soap
 as
requirement to composer.json

{
"require": {
"artisaninweb/laravel-soap": "0.2.*"
}
}


 "require": {
        "php": ">=5.5.9",
        "laravel/framework": "5.1.*",
"artisaninweb/laravel-soap": "0.2.*",
        "overtrue/laravel-lang": "dev-master"
 },

Add
the service provider in 
app/config/app.php
.

'Artisaninweb\SoapWrapper\ServiceProvider'


To
use the facade add this to the facades in 
app/config/app.php
.

'SoapWrapper' => 'Artisaninweb\SoapWrapper\Facades\SoapWrapper'


执行
composer update

<?php

use Artisaninweb\SoapWrapper\Facades\SoapWrapper;

class SoapController {

public function demo()
{
// Add a new service to the wrapper
SoapWrapper::add(function ($service) {
$service
->name('currency')
->wsdl('http://currencyconverter.kowabunga.net/converter.asmx?WSDL')
->trace(true) // Optional: (parameter: true/false)
->header() // Optional: (parameters: $namespace,$name,$data,$mustunderstand,$actor)
->customHeader($customHeader) // Optional: (parameters: $customerHeader) Use this to add a custom SoapHeader or extended class
->cookie() // Optional: (parameters: $name,$value)
->location() // Optional: (parameter: $location)
->certificate() // Optional: (parameter: $certLocation)
->cache(WSDL_CACHE_NONE) // Optional: Set the WSDL cache
->options(['login' => 'username', 'password' => 'password']); // Optional: Set some extra options
});

$data = [
'CurrencyFrom' => 'USD',
'CurrencyTo' => 'EUR',
'RateDate' => '2014-06-05',
'Amount' => '1000'
];

// Using the added service
SoapWrapper::service('currency', function ($service) use ($data) {
var_dump($service->getFunctions());
var_dump($service->call('GetConversionAmount', [$data])->GetConversionAmountResult);
});
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  laravel