分类目录:PHP

以下是分类 PHP 下的所有文章

php正则表达式手册

正则表达式虽然使用情境不多,但是很多地方还是使用正则表达式来解决问题比较方便,尤其是使用php做采集的时候,正则表达式更是不可或缺,以下记录一下php正则表达式的相关知识。 正则表达式定义 正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者……

thinkphp5学习笔记(9)

(8)模型输出 以 User 模型为例,模型定义如下: <?php namespace app\index\model; use think\Model; class User extends Model { } 输出数组 可以使用 toArray 方法把当前的模型对象输出为数组。 修改 User 控制器的 read 操作方法如下: // 读取用户数据并输出数组 public function read($id = '……

thinkphp5学习笔记(8)

(7)关联 ThinkPHP5.0 的关联采用了对象化的操作模式,你无需继承不同的模型类,只是把关联定义成一个方法, 并且直接通过当前模型对象的属性名获取定义的关联数据。 举个例子,有一个用户模型 User ,有一个关联的模型对象 Book ,每个用户有多本书, User 模型定义如 下: User 模型的 books 方法就是一个关联定义方法……

thinkphp5学习笔记(7)

(3)读取器和修改器 读取器 前面读取用户生日的时候,使用了 date 方法进行日期的格式处理输出,但是每次读取数据后都需要这样处 理就显得非常麻烦。 使用读取器功能就可以简化类似的数据处理操作,例如,我们给 User 模型添加读取器的定义方法。 <?php namespace app\index\model; use think\Model; class User……

thinkphp5学习笔记(6)

模型和关联 ThinkPHP5.0 的模型是一种对象-关系映射(Object/Relation Mapping,简称 ORM )的封装,并且提供了 简洁的 ActiveRecord 实现。一般来说,每个数据表会和一个“模型”对应。 ORM 的基本特性就是表映射到记录,记录映射到对象,字段映射到对象属性。模型是一种对象化的操作 封装,而不是简单的 CURD 操作,简单……

thinkphp5学习笔记(5)

本章查询内容均配置了数据表前缀 think_ ,因此统一使用 Db 类的 name 方法代替 table 方法进行举例说明。 查询表达式 最普通的查询就是判断某个字段是否等于某个值,例如,我们查询 think_data 数据表中 id 等于1的数 据,用法如下: $result = Db::name('data') ->where('id', 1) ->fin……

thinkphp5学习笔记(4)

数据库 5.0 的数据查询由低到高分三个层次,本章会涉及到前面两个: 1. 数据库原生查询(SQL查询); 2. 数据库链式查询(查询构造器); 3. 模型的对象化查询; 在第一章已经提到,在使用 Db 类进行数据库查询之前,首先必须先创建一个控制器类,以及一个操作方法 用于测试,类似于: <?php namespace app\index\c……

thinkphp5学习笔记(3)

请求和响应 1、请求对象 ThinkPHP5 的 Request 对象由 think\Request 类完成。 Request 对象的一个主要职责是统一和更安全地获取当前的请求信息,你需要避免直接操作 $_GET 、$_POST 、$_REQUEST 、 $_SESSION 、 $_COOKIE ,甚至 $_FILES 等全局变量,而是统一使用Request 对象提供的方法来获取请求变量。 下面来举一个……

thinkphp5学习笔记(2)

1、URL访问 http://serverName/index.php/模块/控制器/操作 注意:模块在ThinkPHP中的概念其实就是应用目录下面的子目录,而官方的规范是目录名小写,因此模块全部采 用小写命名,无论URL是否开启大小写转换,模块名都会强制小写。 应用的 index 模块的 Index 控制器定义如下: <?php namespace app\index\control……

thinkphp5学习笔记(1)

1、默认程序入口文件 public/index.php 官方提供的application目录结构说明: 新建模块, php think build --module demo 为调试方便,把index.php从public目录移至根目录。然后修改index.php的内容,更改路径如下: // 定义应用目录 define('APP_PATH', __DIR__ . '/application/'); // 加载……