1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
# Model层 ### /application/admin/model/Spec.php ``` <?php namespace app\admin\model; use think\Model; class Spec extends Model { /** * 后置操作方法 * 自定义的一个函数 用于数据保存后做的相应处理操作, 使用时手动调用 * @param int $id 规格id */ public function afterSave($id) { ~~~~~~~~~ ~~~~~~~~ } } ``` # 控制器层 ### /application/admin/controller/Goods.php ``` /** * 添加修改编辑 商品规格 */ public function saveSpec(){ $model = model('Spec');//实例化 $model->data($post_data, true); // 收集数据 if ($type == 2) { $model->isUpdate(true)->save(); // 写入数据到数据库 $model->afterSave(input('id')); } else { $model->save(); // 写入数据到数据库 $insert_id = $model->getLastInsID(); $model->afterSave($insert_id); } } } ``` # 换行符 PHP_EOL ### ==根据不同的win unix mac 自动识别换行== ``` implode(PHP_EOL, $items); ``` # 验证 **在validate文件创建对应数据库名称的验证器** ``` namespace app\index\validate; use think\Validate; class User extends Validate { protected $rule = [ 'name' => 'require|max:25', 'age' => 'number|between:1,120', 'email' => 'email', ]; protected $message = [ 'name.require' => '名称必须', 'name.max' => '名称最多不能超过25个字符', 'age.number' => '年龄必须是数字', 'age.between' => '年龄只能在1-120之间', 'email' => '邮箱格式错误', ]; } ``` ### ==引入验证器 注意:验证器跟数据库名称一致== ``` $validate = \think\Loader::validate('User'); if(!$validate->check($data)){ dump($validate->getError()); } ``` # 验证 ``` $validate = \think\Loader::validate('article'); if($validate->check($data)){ $db = \think\Db::name('article')->insert($data); /*添加文章*/ if($db){ return $this->success('文章添加成功!','lst'); }else{ return $this->error('文章添加失败!'); } }else{ return $this->error($validate->getError()); } ``` |

我的微信
把最实用的经验,分享给最需要的读者,希望每一位来访的朋友都能有所收获!