批改状态:合格
老师批语:
什么是类: 类是具有相同属性和服务的一组对象的集合。为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和服务两个主要部分。在面向对象的编程语言中,类是一个独立的程序单位,应该有一个类名并包括属性说明和服务说明两个主要部分。
什么是对象:
对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位。一个对象由一组属性和对这组属性进行操作的一组服务组成。从更抽象的角度来说,对象是问题域或实现域中某些事物的一个抽象,它反映该事物在系统中需要保存的信息和发挥的作用;它是一组属性和有权对这些属性进行操作的一组服务的封装体。客观世界是由对象和对象之间的联系组成的。
类与对象的关系就如模具和铸件的关系,类的实例化结果就是对象,而对一类对象的抽象就是类。类描述了一组有相同特性( 属性 ) 和相同行为 ( 方法 ) 的对象。
<?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 '链接成功';
}点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号