需求:每当项目上线前,都要测试一番,产品经理自己瞎操作一波后会来找后台,给我把有关XXX的数据都删除了,然后你就去操作数据库,把有关的数据删除!!
代码思路如下:
/**
* @param $field_name /字段名
* @param $field_value /字段值
* @throws \think\db\exception\BindParamException
* @throws \think\exception\PDOException
*/
public function fieldDel($field_name,$field_value)
{
$table = BaseModel::getInstance()->query('show tables');//获取数据库所有表
foreach ($table as $key=>$value){
//$value['Tables_in_表名']长这个样子:xyb_xxx_xxx
$table_name = explode("_",$value['Tables_in_xyb123']);//切割表名为数组
$model = '';
for($i = 1;$i < count($table_name); $i++){//$i=1从1开始,去除表前缀
$model .= ucfirst($table_name[$i]);//去除前缀的表名
}
$table_model =