PHP也能实现java bean类似的自动赋值.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PHP也能实现java bean类似的自动赋值

PHP也能实现java bean类似的自动赋值 前些天用Struts写个小东西玩玩,发现在struts中表单对action form是自动进行赋值的。也就是说,只要JAVA BEAN里面的属性名与页面表单中对应的input名是严格对应的就可以自动赋值。感觉很有意思,PHP是自己最喜欢的WEB编程语言,就想试着在PHP中也实现这个功能,没想到查了一下PHP的手册中关于反射的部分,发现真是太Easy了。在项目中应用了一下感觉太爽了。不仅实现了自动赋值,可以说还实现了自动取值,至少方便了特别多。 只要在调用的时候 ;  $foo-setValues();//就完成了自动赋值的过程。原来要写多个个XX=$_POST[XX]啊 如果要取实体类的值也十分方便  $foo-setValues();//取得需要进行查询必须的部分属性值其实只要取一个KEY就成了。 ,所有的属性值就都被数据表中的对应数据填充了。   跟大家分享一下。  以往如果对一个数据表进行封装,一般会写一个对应的类文件,用来读写数据。就象下面这个这样。  * 此apply数据表封装是由《数据表封装类自动生成工具1.0》生成. 目前此工具任处于完善过程中,有意见或建议请 mail:jy@cjlu.edu.cn require_once(dbc.php);//数据库连接文件,我用的是ADO  public $TSBH;//提示编号  public $TSLB;//提示类别  public $TSNR;//提示内容  public $PF;//评分   /**  * 对实例各属性进行赋值  *  */  public function setValues(){ //如果实体类对应的数据表有30个字段,这部分将会超级长  $this-TSBH=$_POST[TSBH];  $this-TSLB=$_POST[TSLB];  $this-TSNR=$_POST[TSNR];  $this-PF=$_POST[PF];  }  /**  * 保存数据  *一般在调用前需要调用getValues()从WEB表单中获取数据自动为各属性进行赋值  *@return 更新或写入的数据条数  **/  public function save(){  global $MyDB;   $sql=select TSBH from cvts_tips where TSBH=$this-TSBH;  $MyDB-query($sql);  if($MyDB-Affected_Rows()=1){  $sql=update cvts_tips set TSBH=$this-TSBH,TSLB=$this-TSLB,TSNR=$this-TSNR,PF=$this-PF where TSBH=$this-TSBH;  }else{  $sql=insert into cvts_tips (TSBH,TSLB,TSNR,PF) values($this-TSBH,$this-TSLB,$this-TSNR,$this-PF);  }  $MyDB-query($sql);  return $MyDB-Affected_Rows();  }  public function delValue(){  global $MyDB;   $sql=delete from cvts_tips where TSBH=$this-TSBH;  $MyDB-query($sql);  return $MyDB-Affected_Rows();  }  /**  * 根据提示编号来查询数据表中的信息并为实例各属性进行赋值  *  */  public function getDetail(){  global $MyDB;   $sql=select * from cvts_tips where TSBH=$this-TSBH;  $rs=$MyDB-query($sql);  if($rs){  $row=$rs-fetchRow(); //如果实体类对应的数据表有30个字段,这部分将会超级长  $this-TSBH=$row[TSBH];  $this-TSLB=$row[TSLB];  $this-TSNR=$row[TSNR];  $this-PF=$row[PF];  }  }  /**  * 根据日期加随机数生成一个字符串。  *T

文档评论(0)

htfyzc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档