我有一个用webdev开发的Web服务,我想用Symfony 2来使用它。
这时,我选择了纯PHP。我试图将对象定义为类似于wsdl中描述的类(这将允许我直接创建对象的实例)。 例如:
class my_complex_type{
public $my_basic_type1 = null ;
public $my_basic_type2 = null ;
public $my_basic_type3 = null ;
public function __construct($my_basic_type1, $my_basic_type2, $my_basic_type3){
$this->my_basic_type1 = $my_basic_type1 ;
$this->my_basic_type1 = $my_basic_type1 ;
$this->my_basic_type1 = $my_basic_type1 ;
}
// setters and getters ...
}
并通过以下方式调用函数:
public function my_function(my_type $parameters)
{
return $this->__soapCall('my_function', array($parameters));
}
我遇到这个问题的方法是,我认为这并不能使代码变得如此灵活,重新编码已经写在wsdl中的内容非常烦人
所以我想知道你是否有更方便的选择(也许更适合Symfony)
编者注:英语不是我的母语所以请不要怪我,我尽力使这个话题易于理解
我将非常感谢您提供的任何帮助。
答案 0 :(得分:0)
任何时候您需要在应用程序中使用一次以上的类,您需要将其定义为服务。服务是执行某种类型的全局任务的php对象。关于服务的一个很酷的事情是,您可以使用名为Injection的进程将其他服务注入其中。我知道你担心你的代码是灵活的。我保证这种注射方式具有极大的灵活性。如果您发现这对您来说不够灵活,那么symfony就有一种称为工厂的东西,它提供了更大的灵活性。看看...... http://symfony.com/doc/current/components/dependency_injection/factories.html