php第7节对象基础与MySQLi对象编程

网站建设 Kongli 6个月前 (04-29) 104次浏览 0个评论

对象基础
类就是对象的模板,对象是类的一个实例!

对象的创建
创建对象的前提是得有一个模板,而模板就是一个类,而内部的一些动作则是属性
class Car{
//属性声明,public 是访问控制(公共访问)
public $car_name=’003′;
public $color=’red’;
public $price=38000;

 

//定义方法
public function getShanghai(){
//使用 $this-> (对象成员访问符进行当前类的属性访问)
return ‘车辆:’.$this->$car_name.’正在去上海’;
}
}

//调用,使用之前必须要选导入类,使用 require ‘xxxx/Car.php’; 进行引入,引入之后实例化类
$car = new Car(); //实例化类
$car->getShanghai(); //调用类中的方法
echo $car->car_name; //访问类中的成员(前提是类中的成员必须有public才可以)

 

对象的构造方法
在上前的示例中,我们有写死了public 访问控制,这是非常不友好的,public 就是人人都可以访问,很容易出现不必要的错误,所以需要
通过构造访问对类进行公共(public)、私有(private)来控制,并且对属性实施获取器(getter)和修改器(setter)

class Car{
//属性声明,private是访问控制(只能当前类访问)
private $car_name=’003′;
private $color=’red’;
private $price=38000;

 

//声明构造方法,使用固定魔术方法 __construct(),它会在外部new的时候自动调用,如果里面有参数的情况下,必须得写上参数
//凡是类中使用双 __为前提创建的系统魔术方法都是自动调用的
public function __construct($car_name,$color,$price){
$this->car_name = $car_name;
$this->color=$color;
$this->price=$price;
}

//创建对外访问的属性方法(获取器getter)
public function __get($name){
return $this->$msg;
}
getPrice ….
//设置器(setter)
public function __set($price,$value){
return $this->price = $value;
}
}

//调用
$car2 = new Car(‘001号车’,’红色’,68000); //实例化类,并传递初始值
echo $car2->car_name; //获取值
echo $car2->price = 888880; //设置值

 

基本的MySQL介绍
在php中常用的数据类型有字符串(需要在字符两边加上单引号)、数字、时间类型(时间戳)是从1970年1月1日到现在过去的秒数

常用的SQL语句有增、删、改、查
增:
INSERT INTO `表名` (`插入的字段`,`插入的字段2`) VALUES(`插入的内容`,`插入的内容`)

示例:
INSERT INTO `article` (`article_title`,`article_content`,`article_click`) values(‘Adminer 4.7.0 中文版 – PHP源码’,’没有为AUTO_INCREMENT 列指定值,因此MySQL会自动分配序列号。’,223);,

 

示例2:为避免防止重新的数据添加,需要在INSERT 后面加上一个关键字 IGNORE,并且into是可以省略的,语句如下:
IINSERT IGNORE `article` (`article_title`,`article_content`,`article_click`) values(‘新标题’,’没有为AUTO_INCREMENT 列指定值,因此MySQL会自动分配序列号。’,223);

在执行多次INSERT之后会往数据表中插入多条记录,其中 INSERT INTO 中的 INTO 是可以省略的

删:DELETE FROM `表名` WHERE `字段`=条件,它同UPDATE一样,需要有一个删除的条件,如何删除 article_id=1的内容,执行过后返回了受影响的行数
那么说明执行成功了。

 

改:
UPDATE `表名` SET `article_title`=’修改数据表’,`article_content`=’这是mysql的修改操作’ WHERE `article_id`=1;,使用修条操作后面一定要带WHERE条件,而
后面的 article_id=1 则是要修改哪条数据,对应的则是表里面的id编号,执行后同上方删除一样,返回受影响的行数就是执行成功了。

查:
查询的方法有许多,这里只介绍简单的查询,例如要查询哪张表的全部数据
查询所有:SELECT * FROM `article`;
查询指定字段:SELECT `article_title`,`article_content` FROM `article`;
查询字符并带条件:SELECT `article_title`,`article_content` FROM `article` WHERE `article_click`>200;
查询表中有多少字段:SELECT COUNT(*) AS RES FROM `article`;
结果:

MySQL数据库的连接
//连接之前需要将部分连接错误给屏蔽掉,防止泄露数据库的连接信息,此语句可在最后完工再加上,必须放在最顶部
error_reporting(E_ALL ^E_WARNING); 这里的写法是错误级别具体可以查看手册.
$mysqli = new mysqli(‘127.0.0.1′,’root’,’root’); //使用mysqli对象创建数据库连接,并返回mysqli对象,我们可以使用var_dump($mysqli);来查询它有哪些属性
//判断是否连接成功
if($mysqli->connect_errno){
    //connect_errno 这个属性返回的是连接错误的编号,如果存在则说明连接错误
   //connect_error 这个是返回错误的字符串
    die(‘连接错误’.$mysqli->connect_errno.’:’.$mysqli->connect_error); //自定义错误提示信息
}
//连接成功则设置默认的数据库
$mysqli->select_db(‘php’);
//设置字符编码集,防止乱码
$mysqli->set_charset(‘utf8’);
 精简写法
将连接字符串用一个config.php类进行封装,而在使用的时候只需要 require ‘config.php’; 即可以调用连接数据
而创建连接的时候可以直接选择数据库,$mysqli = new mysqli($db_host,$db_user,$db_pass,$db_name);

行者信息 , 版权所有丨如未注明 , 均为原创丨转载请注明原文链接:php第7节对象基础与MySQLi对象编程
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址