我正在尝试编写一个脚本来检查我的PHP类文件是否与MySQL数据库表模式匹配。
数据库表"品牌"
Column Type Null Extra Key
==============================================================
id INT(11) NO AUTO_INCREMENT Primary
brand_name VARCHAR(50) NO
founded INT(11) NO
status INT(11) NO Default: 1
created_on DATETIME NO
updated_on DATETIME NO
我的PHP类文件" Brand.php"如下:
<?php
class Brand {
public $id;
public $brand_name;
public $founded;
public $status;
public $created_on;
public $updated_on;
public function __construct() {
// constructor here
}
}
?>
检查相应属性的最佳方法是什么?
我想到的一种方法是使用PHP脚本来检查上面的PHP类:
使用get_object_vars($obj)的一个缺点是,此函数只能获取 public 属性,因为它在类外部调用。还有更好的选择吗?
由于我使用的是基于Unix的系统,因此使用shell脚本也是可行的。
答案 0 :(得分:1)
$brand = new Brand();
if(!property_exists($brand, 'brand_name'))
{
throw new Exception("Brand doesn't match table's schema.");
}