什么是对象,什么是类:
* 类的概念:类是具有相同属性和操作的一组对象的集合。
* 它为属于该类的所有对象提供了统一的抽象描述,
* 其内部包括属性和操作两个主要部分。在面向对象的编程语言中,
* 类是一个独立的程序单位,它应该有一个类名并包括属性说明和操作说明两个主要部分。
*
* 对象:对象是人们要进行研究的任何事物,它不仅能表示具体的事物,
* 还能表示抽象的规则、计划或事件。
* 对象具有状态,一个对象用数据值来描述它的状态。
* 对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。
* 对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中。
2.自定义类与实例化:
infomation.php
实例
<?php /** * Created by PhpStorm. * User: 714326675 * Date: 2018/8/30 * Time: 21:20 */ //新建类 class info{ //新建私有属性/对象 //姓名 private $name; // 年龄 private $age; //薪水 private $salary; //三围 private $stature= []; //属性收集器 private $data=[]; //声明构造方法:对象属性的初始化,在类的实例化的时候,自动调用 public function __construct($name,$age,$salary, array $stature, array $data=[]){ //private访问符限制的属性仅在当前对象内部可以使用 $this->name = $name; $this->age = $age; $this->salary = $salary; $this->stature = $stature; $this->data=$data; } //创建对外访问的公共接口 //类中用双下划线的方法是系统定义,由系统自动调用,叫魔术方法 public function __get($name){ $message=null; //判断$this->$name是否为空 if(isset($this->$name)){ $message=$this->$name; //判断$this->data[$name]是否存在 }elseif(isset($this->data[$name])){ $message=$this->data[$name]; }else{ $message='无属性'; } return $message; } //设置器 public function __set($name,$value){ $this->$name=$value; } }
运行实例 »
点击 "运行实例" 按钮查看在线实例
index.php
实例
<?php /** * Created by PhpStorm. * User: 714326675 * Date: 2018/8/30 * Time: 21:19 */ require './information.php'; $info=new info('张三',20,'10086',[80,90,90]); //调用__get()方法 echo $info->name,'<hr>'; echo $info->age,'<hr>'; echo $info->salary,'<hr>'; //调用__set()方法 $info->salary=500; echo $info->salary,'<hr>'; echo $info->sex,'<hr>'; //调用__set()方法 $info->sex='man'; echo $info->sex,'<hr>'; echo '<pre>',var_dump($info);
运行实例 »
点击 "运行实例" 按钮查看在线实例
预览图
MYSQL增删改查:
数据表操作:
添加记录:
INSERT [INTO] tbl_name[(col_name,...)] {VALUE|VALUES}(VALUES...);
1.不指定字段名称的,必须把值按顺序填写,每个都要写,不然数据会乱
INSERT tbl_name VALUE(value...)
2.列出指定字段
INSERT 列名1,列名2 FROM 表名 VALUES(值1,值2);
3.插入多条记录:
INSERT 列名1,列名2 FROM 表名 VALUES(值1,值2),
(值11,值22),
(值111,值222);
删除记录:
DELETE FROM tbl_name [WHERE 条件]
如果不添加条件,会删除表中所有记录
DELETE清空数据不会重置AUTO_INCREMENT的值,可以通过ALTER语句将其重置为1
彻底清空数据表 :
TRUNCATE [TABLE] tbl_name;
清除表中所有记录
会重置AUTO_INCREMENT的值
修改记录:
UPDATE tbl_name SET 字段名称=值,字段名称=值 [WHERE 条件]
如果不添加条件,整个表中的记录都会被更新
查询记录:
SELECT select_expr,... FROM tbl_name
[WHERE 条件]
[GROUP BY {col_name|position} HAVING 二次筛选]
[ORDER BY {col_name|position|expr} [ASC|DESC]]
[LIMIT 限制结果集的显示条数]
查询表中所有的记录:SELECT * FROM 表名
查询字段信息(列): SELECT 列名 FROM 表名
例子:SELECT `stuno`,`stuname`,`numeric` FROM `student` WHERE `stuno`='10096';
数据库连接与检测:
实例
<?php /** * Created by PhpStorm. * User: 714326675 * Date: 2018/8/31 * Time: 15:51 */ ////简化: 将连接参数转为数组 $db=[ 'host'=>'127.0.0.1', 'user'=>'root', 'password'=>'', 'dbname'=>'news', 'charset'=>'utf8' ];
运行实例 »
点击 "运行实例" 按钮查看在线实例
实例
<?php /** * Created by PhpStorm. * User: 714326675 * Date: 2018/8/31 * Time: 15:56 */ //连接数据库 //引用config.php文件 require './config.php'; error_reporting(E_ALL ^E_WARNING); $mysqli=new mysqli($db['host'],$db['user'],$db['password'],$db['dbname']); //判断是否连接成功 if($mysqli->connect_errno){ die('连接错误'.$mysqli->connect_errno.':'.$mysqli->connect_error); }else{ echo '连接成功'; } //设置默认客-户-端字符集。 $mysqli->set_charset($db['charset']); //sql语句 表名列名加反引号 $sql= "INSERT `user` (`username`,`password`,`email`) VALUES('baa','23246','2313543@qq.com')"; $charu=$mysqli->query($sql); //判断是否成功 if($charu){ echo '数据插入成功'; }else{ echo '失败'; } //关闭数据库连接 $mysqli->close();
运行实例 »
点击 "运行实例" 按钮查看在线实例
手抄笔记:
总结:
类的定义
class +类名
类的实例化:new 类名();
mysql增删改查:
insert tablename(列名) values(值)
delete * from 表名 where 列名=值
update 表名 set 列名=值(这是改的值) where列名=值(这是定位)
select * from 表名 .....
mysqli连接数据库:$mysqli=new mysqli(host,库的用户名,密码,库名,端口)
设置默认字符集:$mysqli->set_charset(字符集)
关闭数据库:$mysqli->close($mysqli)