Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex 如何在Flex、Zend、AMFPHP中使用对象映射_Apache Flex_Zend Framework - Fatal编程技术网

Apache flex 如何在Flex、Zend、AMFPHP中使用对象映射

Apache flex 如何在Flex、Zend、AMFPHP中使用对象映射,apache-flex,zend-framework,Apache Flex,Zend Framework,文件结构 customerService.PHP include 'vo/VOCustomer.php'; include 'mydb.php'; class customerService { public function createCustomer(VOCustomer $cus) { $db = new mydb(); $db->connect(); $query = sprintf("

文件结构

customerService.PHP

 include 'vo/VOCustomer.php';
 include 'mydb.php';
   
 class customerService 
 {    
  public function createCustomer(VOCustomer $cus)
  {
      $db = new mydb();
      $db->connect();
      
      $query = sprintf("insert into customer (CusId, CusName, CusContact,idcompany) values ('%s','%s','%s','%s')",
      mysql_real_escape_string($cus->CusId),
      mysql_real_escape_string($cus->CusName),
      mysql_real_escape_string($cus->CusContact),
      mysql_real_escape_string($cus->idcompany));

      $rs = mysql_query($query) or die ("Unable to complete query.");
      
      return 'success';
  }
 }
vo/VOCustomer.php

class VOCustomer {
    public $CusId;
    public $CusName;
    public $CusContact;
    public $idcompany;
}
将customerService.php导入flex zend项目时,数据类型可能不会返回为VOCustomer,有时它会将对象显示为类型


如何将传递的对象设置为VOcustomer对象?

我不确定“连接到PHP”向导是否理解类型提示。 即使Zend AMF真的这么做了,它也会将一个对象而不是VOCustomer传递给该方法。 添加PHPDoc注释更安全:

/**
 * @param VOCustomer $cus
 */
public function createCustomer($cus)
第二,将虚拟函数添加到返回VOCustomer的服务中。“连接到PHP”向导仅当值对象由服务方法返回时才会生成它

/**
 * @return VOCustomer
 */    
public function getCustomer() {
    //Do nothing
}

我相信您可以修改生成的AS3服务类,以便在AS3端使用类型化参数。不确定为什么它没有为您这样做,如果您允许它基于数据库(使用内置模板)生成PHP和AS3 DTO以及服务类,它将以类型化对象的形式显示参数。更新AS3服务对象后,您应该能够刷新该面板以查看所反映的更改。