Blogger Information
Blog 39
fans 2
comment 2
visits 50635
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
对象基础与mysql编程入门-2018年9月29号
fighting的博客
Original
794 people have browsed it

                                                                    对象基础与mysql编程入门

                                            时间: 2018年9月29号                           天气:晴 

1. 问答: 什么类,什么是对象,举例说明;

答: 回答这个问题,先理清楚类和对象是怎么来的。为什么要学习类和对象?

面向对象(OOP,Object Oriented Programming):   

      起初,“面向对象”是指在程序设计中采用封装、继承、多态等设计方法。现在,面向对象的思想已经涉及到软件开发的各个方面。如,面向对象的分析(OOA,ObjectOriented Analysis),面向对象的设计(OOD,Object Oriented Design)、以及面向对象的编程实现(OOP,Object Oriented Programming)。而面向对象编程的两个重要概念就是类和对象。

类的解释与举例:

    世间万物都有其自身的属性和方法,通过不同的属性和方法可以将不同的物质区分开来。例如,人具有身高、体重、肤色等属性,还可以进行吃饭、睡觉、学习等活动,这些活动可以说是人具有的功能。呃呃,可以把人看作是程序中的一个人‘类’,那么人的身高可以看作类中的属性,学习可以看作类中的方法。由此可得:类就是属性和方法的集合。是面向对象的核心与基础,通过类可以将一些零散用于实现某功能的代码进行整合与管理。

eg:创建一个运动类定义4个属性和3个方法:

                 

               1.png

对象的解释与举例: 

类只是具备某项功能的抽象模型,而对象就是类实例化后的产物,仍然以人为例,人是一个类,黄种人是人,这句话逻辑没错,但人是黄种人这句话就错了(因为还有黑人、白人)。可以这么理解:对象就是一个看得见、摸得着的一个类。实例化类后对象不一定相等。

     1.png

2. 编程: 参考object/demo3.php,自定义类与实例化,要求必须将属性私有化,通过公共接口__set()和get()进行访问

实例

class文件夹中的CBA类
<?php
/**
 *创建一个类,,并写出类中具有的方法和属性
 */
class  CBA{
    //全部使用私有属性
    //省份
    private $province;
    //当家球星
    private $name;
    //身体素质
    private $body = [];

    //构造一个__construct()类通过外部调用时直接初始化
    public function __construct($a,$b,array $c)
    {
        $this->province=$a;
        $this->name=$b;
        $this->body=$c;
    }
   //构造__get()允许外部访问
    public  function __get($name)
    {
        // TODO: Implement __get() method.
    $msg = null;
    if(isset($this->$name)){
        $msg = $this->$name;
    }else{
        $msg = '无此属性';
    }
        return $msg;
    }
    //构造__set()允许外部访问
    public  function  __set($name, $value)
    {
        // TODO: Implement __set() method.
    $this->$value;

    }

}
demo2中实例化CBA后的对象

<?php
header('Content-type:text/html;charset=utf-8');
require 'class/CBA.php';
$cba = new CBA('新疆省','阿布',['身高'=>'203cm','体重'=>'80kg','体脂'=>'10%']);
echo $cba->province.'<hr>';
echo $cba->name.'<hr>';
$arr = $cba ->body;
foreach ($arr as $key=>$value){
    echo $key.'=>'.$value.'<br>';
}
echo '<hr>';
echo $cba->sex;

运行实例 »

点击 "运行实例" 按钮查看在线实例


本机运行图:

1.png

3. 编程: MySQL常用的增删改查语句(CURD),每个语句必须写10遍以上

1.png

朱老师的staff表中的数据我用SQL命令删除了,现在用SQL进行了插入、更新、查询操作。

4.编程: 数据库的连接与检测(至少写5遍以上,写到吐为止),将连接参数写到独立的配置文件,要求配置参数必须用数组来实现,并在连接脚本中正确引用。

实例

config连接参数:
<?php
/**
 * mysqli的连接参数
 */
//变量方式配置连接参数
//$db_host = '127.0.0.1';
//$db_name = 'php';
//$db_user = 'root2';
//$db_psw = 'root';
//$db_charset='utf-8';

//数组形式配置数据库连接方式
$db = [
    'host' => '127.0.0.1',
    'name' => 'php',
    'user' => 'root',
    'psw' =>'root1',
   'charset'=>'utf-8',
];
demo连接数据库测试代码;
<?php
/**
 * 数据库的连接与测试
 */

header('Content-type:text/html;charset=utf-8');
require 'config.php';
//这次玩用变量的形式
error_reporting(E_ALL^E_WARNING);
//这次使用的面向过程,
/*$conn =  mysqli_connect($db_host,$db_user,$db_psw,$db_name);
//var_dump($conn);

//判断连接是否成功
if(! $conn){
    die('<span style="color: red">错误的信息是:</span>'.mysqli_connect_error($conn));
}else{
    echo '恭喜你,连接成功。';
}*/
//使用面向对象的方法来玩,且连接参数用数组的形式

$conn = new mysqli($db['host'],$db['user'],$db['psw'],$db['name']);
//测试是否连接成功
 if ($conn->connect_errno){
     die('<span style="color: red">错误的信息是:</span>'.$conn->connect_errno.':'.$conn->connect_error);
 }else{
     echo '恭喜你,连接成功。';
 }

运行实例 »

点击 "运行实例" 按钮查看在线实例



本机运行图

1、密码错误:

1.png

2、正确连接

2.png

5 手写: 与MySQLil连接相关的几个属性和方法的名称,参数,与功能和用法 

1.png

总结:

总的来说,这节课算是基础,不算什么,主要了解了mysql的连接测试与类与对象的基础入门。但希望检查老师能指出不足之处,不然我连自己错在哪里都不知道。







Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post