当前位置:Gxlcms > PHP教程 > php使用反射插入对象示例_PHP教程

php使用反射插入对象示例_PHP教程

时间:2021-07-01 10:21:17 帮助过:16人阅读

这篇文章主要介绍了php使用反射插入对象示例,需要的朋友可以参考下

代码如下: /** * 插入insertModel(),利用反射,效率稍差 * @param class $model 对象 * @param bool $is_returnLastInsertId 是否返回添加ID * @return int 默认返回成功与否,$is_returnLastInsertId 为true,返回添加ID */ public function insertModel($model,$is_returnLastInsertId=FALSE) { try { require_once dirname(dirname(__FILE__)).'\Models\BaseModel.php'; if(!is_subclass_of($model, "BaseModel")){ exit($this->getError(__FUNCTION__, __LINE__)); } $className=get_class($model); $tName = $this->formatTabName($className); $reflectionClass=new ReflectionClass($className); $properties=$reflectionClass->getProperties(); unset($properties[0]); $fields=""; $vals=""; foreach ($properties as $property) { $pName=$property->getName(); $fields.=$pName.","; $vals.='\''.$model->$pName.'\''.','; } $fields=rtrim($fields,','); $vals=rtrim($vals,','); $this->sql = "insert into {$tName} ({$fields}) values ({$vals})"; if($is_returnLastInsertId){ $this->conn->exec($this->sql); $lastId = (int)$this->conn->lastInsertId(); return $lastId; } else { $row = $this->conn->exec($this->sql); return $row; } } catch (Exception $exc) { echo $exc->getMessage(); } }

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/740411.htmlTechArticle这篇文章主要介绍了php使用反射插入对象示例,需要的朋友可以参考下 代码如下:/** * 插入insertModel(),利用反射,效率稍差 * @param class $mod...

人气教程排行