我应该通过WSDL(和NuSOAP)从其他服务器获取可用的产品列表及其价格。
不需要视图(我认为没有控制器);所以我创建了一个没有表的模型(因为我不想存储服务器数据)
在我的模型文件的开头使用App:import('Vendor', 'path_to_nusoap.php')
。
让我们看看我的模特:
<?php
App::uses('AppModel', 'Model');
App::import('Vendor', 'nusoap' . DS . 'nusoap.php');
/**
* MyModel Model
*
*/
class MyModel extends AppModel {
public $useTable = false;
public $client = new nusoap_client('url', 'WSDL');
public function products(){
$products = $client->call('getProductsList');
////
return $products;
}
public function prices(){
$prices = $client->call('getPricesList');
////
return $prices;
}
}
但它会导致错误(在该行:public $client
)
现在,问题:
对不起我糟糕的英语。 感谢。
答案 0 :(得分:0)
你不能在方法范围之外创建一个对象!
使用构造函数:
public $Client;
public function __construct() {
$this->Client = new nusoap_client('url', 'WSDL');
}
public function products() {
$products = $this->Client->call('getProductsList');
return $products;
}