Rumah > pembangunan bahagian belakang > tutorial php > 极客学院深入ThinkPHP框架视频教程的资源推荐

极客学院深入ThinkPHP框架视频教程的资源推荐

黄舟
Lepaskan: 2023-03-15 16:44:01
asal
1624 orang telah melayarinya

PHP 作为一种广泛用于 Web 服务器端的脚本语言,在敏捷 Web 开发方面有独特的优势,成功案例多、社区活跃、资源丰富,框架也非常多。ThinkPHP 作为一款起步较早、相对成熟的国产 PHP 框架,在国内有相当的用户量,通过《极客学院深入ThinkPHP框架视频教程》向大家介绍 ThinkPHP 基础知识,为后续的项目实战做好准备。

LE`L2]EN01}%UQA(2{2O74E.png

课程播放地址:http://www.php.cn/course/322.html

该老师讲课风格:

讲课亲切自然,朴实无华,没有矫揉造作,也不刻意渲染,而是娓娓而谈,细细道来,师生之间在一种平等、协作、和谐的气氛下,进行默默的情感交流,将对知识的渴求和探索融于简朴、真实的教学情景之中,学生在静静的思考、默默的首肯中获得知识

本视频中较为难点是ThinkPHP 模型实现数据自动填充了:

ThinkPHP 自动填充

ThinkPHP 内置了数据对象的自动填充功能,可以用来处理默认值、数据过滤以及其他系统写入字段的自动处理。

要使用自动填充功能,只需要在对应的 Model类 里面定义 $_auto 属性(由多个验证因子组成的数组)。$_auto 属性是由多个填充因子组成的数组,语法格式如下:

1

2

3

protected $_auto = array(

    array(填充字段,填充内容[,填充条件][,附加规则])

};

Salin selepas log masuk

自动填充例子

用户注册或修改资料时,可能用到的自动填充例子:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

class UserModel extends Model{

    protected $_auto = array (

        // 新增的时候把status字段设置为1

        array('status','1'),

        // 对password字段在所有情况下使用md5函数处理

        array('password','md5',3,'function'),

        // 对username字段在新增时回调getName方法

        array('username','getName',1,'callback'),

        // 对regdate字段在新增时写入当前时间戳

        array('regdate','time',1,'function'),

    // 对regip字段在新增时写入用户注册IP地址

        array('regip','get_client_ip',1,'function'),

    );

}

Salin selepas log masuk

和自动验证一样,自动完成机制需要使用 create 方法才能生效:

1

2

3

4

5

6

7

$Article = D("User");

if(!$User->create()){

    // 如果创建数据对象失败(可能是验证未通过等),输出错误提示信息

    exit($Article->getError());

}else{

    // 继续下一步流程如将数据写入数据表

}

Salin selepas log masuk

提示

与自动验证不同的是,自动填充无效时(如调用一个不存在的函数或自动填充的字段不存在等)并不导致创建数据对象(create())失败,只能通过调试或实际数据入库来检测自动填充是否正确有效。

动态改变自动完成规则

和自动验证一样,可以在操作方法中使用 setProperty方法 动态的更改自动完成的规则:

1

2

3

4

5

6

7

8

9

10

$Dao = D("User");

$auto = array (

    // 仅对password字段进行处理

    array('password','md5',1,'function')

);

$User->setProperty("_auto",$auto);

 

if(!$User->create()){

    ……

}

Salin selepas log masuk

Atas ialah kandungan terperinci 极客学院深入ThinkPHP框架视频教程的资源推荐. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan