Blogger Information
Blog 36
fans 0
comment 0
visits 28046
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
mysqli扩展 类与对象 2018_08_29作业
小程_武汉_214945
Original
738 people have browsed it

什么是类: 类是具有相同属性和服务的一组对象的集合。为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和服务两个主要部分。在面向对象的编程语言中,类是一个独立的程序单位,应该有一个类名并包括属性说明和服务说明两个主要部分。


什么是对象:

对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位。一个对象由一组属性和对这组属性进行操作的一组服务组成。从更抽象的角度来说,对象是问题域或实现域中某些事物的一个抽象,它反映该事物在系统中需要保存的信息和发挥的作用;它是一组属性和有权对这些属性进行操作的一组服务的封装体。客观世界是由对象和对象之间的联系组成的。


类与对象的关系就如模具和铸件的关系,类的实例化结果就是对象,而对一类对象的抽象就是类。类描述了一组有相同特性( 属性 ) 和相同行为 ( 方法 ) 的对象。


实例

<?php
/**
 *1.对象的创建
 */

class GirlFriend
{
    //类的成员,属性->变量,方法->函数
    //public 访问控制
    public $name ='范冰冰';
    public $age = '26';
    public $stature=[90,80,90];

    //类中使用类似函数的方式 来定义方法
    public function getInfo($name='', $age=0 ){
        //$this当前类被实例化之后的对象     ->对象成员访问符
        //初始化
        $this->name = empty($name) ? $this->name : $name;
        $this->age = ($age == 0) ? $this -> age : $age;
        return '姓名:'.$this->name.'   年龄:'.$this->age;
    }

    public function getStature($stature=[]){
        $this->stature=empty($stature)?$this->stature:$stature;
        return '胸围'.$this->stature[0].'腰围'.$this->stature[1].'臀围'.$this->stature[2];
    }
}


//导入类
require 'class/GirlFriend.php';

//实例化一个类  创建对象的过程
$GirlFriend = new GirlFriend();

//var_dump($GirlFriend).'<br>';

echo $GirlFriend->name,'<br>';  // 访问类中成员中的属性变量
echo $GirlFriend->getInfo(), '<br>'; // 访问类中成员中的方法函数
echo $GirlFriend->getInfo('你好',30), '<br>'; // 访问类中成员中的方法函数
echo $GirlFriend->getStature([120,130,180]),'<br>';

运行实例 »

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

实例

<?php

//声明一个类
class GrilFriend1
{
    //private 访问符限制的属性仅在当前对象内部可以使用
    private $name ;
    private $sex ;
    private $age ;
    private $email ;
    private $tel ;
    //构造方法 对属性的初始化 在类实例化的时候自动调用
    public function __construct($name,$sex,$age,$email,$tel)
    {
        $this -> name = $name ;
        $this -> sex = $sex ;
        $this -> age = $age ;
        $this -> email = $email ;
        $this -> tel = $tel;

    }
    //创建对外访问的公共接口
    public function getName($admin='')
    {
        $msg='非法访问';
        if(!empty($admin) && $admin=='admin'){
            $msg = '姓名'.$this->name.'性别'.$this->sex.'年龄'.$this->age.'邮箱'.$this->email.'电话'.$this->tel;
        }
        return $msg;
    }

    //设置器
    public  function setAge($age=0){
        if($age>=0 && $age<=120){
            $this->age = $age;
        }
    }

    //获取器
    public  function getAge(){
        return $this->age;
    }

}

//导入一个类
require 'class/GrilFriend1.php';
//实例化一个类
$grilfriend1 = new GrilFriend1('十月','男','18','123456@qq.com','123456');

echo $grilfriend1->getName('admin').'<br>';

$grilfriend1->setAge(26);      //设置年龄
echo $grilfriend1->getAge();    //获取年龄

运行实例 »

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

实例

<?php
class GirlFriend2
{
    private $name;
    private $age;
    private $sex;
    private $type = []; //属性收集器
    //构造方法 在函数实例化的时候自动调用
    public function __construct($name,$sex,$age)
    {
        $this -> name = $name ;
        $this -> sex = $sex ;
        $this -> age = $age ;

    }
    //类中用双下划线的方法是系统定义,由系统自动调用,叫魔术方法
    public function __get($name)
    {
        $msg=null;
        if(isset($this->$name)){
            $msg = $this->$name;
        }elseif (isset($this->type['$name'])){
            $msg = $this->type['$name'];
        }else{
            $msg='无此属性';
        }
        return $msg;
    }
    //设置器
    public function __set($name, $value)
    {
        $this -> $name = $value;
    }

}


require 'class\GirlFriend2.php';

$girlfriend2=new GirlFriend2('admin','男','18');

echo $girlfriend2->name;

$girlfriend2->name='qwer';

echo $girlfriend2->name;

运行实例 »

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

实例

<?php

$db=[
    'host' => '127.0.0.1',
    'username' => 'root',
    'password' => 'root',
    'dbname' => 'user',
    'charset' => 'utf8',
    'sql' => 3306,
];


//导入配置文件
//require 'config.php';

//创建数据库连接
$mysqli= new mysqli ($db['host'],$db['username'],$db['password']);

//选择数据库
$mysqli->select_db($db['dbname']);

//设置数据库编码
$mysqli->set_charset($db['charset']);

//判断数据库是否连接成功
if($mysqli->errno){
    echo $mysqli -> error. ":" . $mysqli -> errno;
}else{
    echo '链接成功';
}

运行实例 »

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



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