tp5 中 model 的新增方法】的更多相关文章

//默认主键为自动识别,如果需要指定,可以设置属性: namespace app\index\model; use think\Model; class User extends Model { protected $pk = 'uid'; // 设置当前模型对应的完整数据表名称 protected $table = 'think_user'; } 使用助手函数model()快速实例化模型(推荐) public function save(){ $user = model('User'); //…
实例化模型后调用查询方法,可以写任何想要的查询(推荐) public function select(){ $user = model('User'); $data = $user -> ) ->limit() ->order('id','desc') ->select(); dump($data); // 模型的all方法或者select方法返回的是一个包含模型对象的二维数组或者数据集对象 } 获取单个数据[get()和find()] public function select…
根据主键删除(推荐) use app\index\model\User as UserModel; public function delete(){ UserModel::destroy([1,2,3]); // 删除主键为1,2,3的数据 } 根据条件删除(推荐) public function delete(){ UserModel::destroy(['status'=>0]); // 删除所有status=0的数据 } 闭包删除 public function delete(){ Us…
// 过滤非数据表字段更新 public function update(Request $request){ $user = model('User'); $result = $user -> allowField(]); dump($result); // 受影响的行数 } //更新指定字段 public function update(Request $request){ $user = model('User'); $result = $user -> allowField([]);…
// 当使用一个新页面替换当前页面的body后,body刷新了,所选择的select值就不能保存住,解决方法如下: 作业题目<select> <option>--请选择--</option> {if condition="$title"} // 先将所选择的option传递到后台,在使用$tis->assign('title',$title)渲染到模板, <option selected="selected" styl…
修改器可以在数据赋值的时候自动进行转换处理 class User extends Model { public function setNameAttr($value){ return strtolower($value); } } class User extends Controller { public function change(){ $user = model('User'); $user ->data($_POST,true); // 这个true很关键,只有置为true后,批量…
在获取数据的字段值后自动进行处理 // 模型中写入如下代码,则查询结果会自动将status的结果进行转换 class User extends Model { public function getStatusAttr($value){ $status = [-1=>'删除',0=>'禁用',1=>'正常',2=>'待审核']; return $status[$value]; } } class User extends Controller { public function s…
方法 说明 Count 统计数量,参数是要统计的字段名(可选) Max 获取最大值,参数是要统计的字段名(必须) Min 获取最小值,参数是要统计的字段名(必须) Avg 获取平均值,参数是要统计的字段名(必须) Sum 获取总分,参数是要统计的字段名(必须) 静态调用: UserModel::count(); UserModel::)->count(); UserModel::)->avg('score'); UserModel::max('score'); 动态调用: $user = mo…
序言 在看别人的代码时发现一个方法String.join(),因为之前没有见过所以比较好奇. 跟踪源码发现源码很给力,居然有用法示例,以下是源码: /** * Returns a new String composed of copies of the * {@code CharSequence elements} joined together with a copy of * the specified {@code delimiter}. * //这是用法示例 * <blockquote>…
1.String.fromCodePoint(); String,fromCodePoint()方法可以认为是对String.fromCharCode()方法的扩展,这两个方法的共同点在于都是用于Unicode码点返回对应字符,但是差异在于String.fromCharCode()该方法不能识别大于0xFFFF的码点,ES6中提供了String.fromCodePoint()就很好的弥补了String.fromCharCode()的不足.它可以识别码点大于0xFFFF的对应字符. 上面是在chr…