<?php
// 魔术方法:构造方法
// 构造方法是类中的特殊方法,在类实例化时会被自动调用,可用来初始化对象成员
// 调用类的时候,立即执行构造方法,第一个执行方法。方法没有位置的先后顺序
// 构造方法: `public function __construct(){...}`
// 可以给属性赋初值,要不然属性值,要在实例化后,给很多值
// 比如说,是车的类,你买了一台车$a,你会使用它的零件吗?
//构造方法是类中的特殊方法,在类实例化时会被自动调用,可用来初始化对象成员
class Demo5{
public $name = '笑眯眯';
public $age;
//构造方法,方法接收传值
public function __construct(){
echo $this->name;
}
}
$a = new Demo5(); //调用类时候 立即执行构造方法
$a->name;
echo '<br>';
$a->name = '韩红';
$a->age = '30';
echo $a->name;
echo '<br>';
echo $a->age;点击 "运行实例" 按钮查看在线实例
echo '<br>--------------------<br>';
class Demo5{
public $name1;
public $age1;
//构造方法,方法接收传值
public function __construct($name2,$age2){
echo $name2;
echo '<br>';
echo $age2;
echo '<br>';
echo $this->name1;
echo '<br>';
}
}
$a = new Demo5('杨幂',32); //调用类时候 立即执行构造方法点击 "运行实例" 按钮查看在线实例
echo '<br>--------------------<br>';
class Demo5{
public $name1;
public $age1;
//构造方法,方法接收传值
public function __construct($name2,$age2){
$this->name1 = $name2;
$this->age1 = $age2;
}
}
$a = new Demo5('杨幂',32); //调用类时候 立即执行构造方法
echo $a->age1;
echo '<br>';
echo $a->name1;点击 "运行实例" 按钮查看在线实例
echo '<br>--------------------<br>';
class Demo5{
public $name1;
public $age1;
//构造方法,方法接收传值
public function __construct($name2,$age2){
$this->name1 = $name2;
$this->age1 = $age2;
}
public function get1(){
return '姓名:'.$this->name1.'年龄:'.$this->age1;
}
}
$a = new Demo5('杨幂',32); //调用类时候 立即执行构造方法
echo $a->get1();点击 "运行实例" 按钮查看在线实例
echo '<br>--------------------<br>';
class Db{
public $dsn;
public $user;
public $password;
//链接属性
public $pdo;
//链接方法
public function connect(){
//使用PDO方法管理数据库 链接成功则返回PDO对象,赋值给对象属性pdo
$this->pdo = new PDO($this->dsn,$this->user,$this->password);
}
public function __construct($dsn,$user,$password)
{
//初始化对象属性
$this->dsn = $dsn;
$this->user = $user;
$this->password = $password;
//自动调用对象方法,链接数据库,this除了可以调用变量,还可以调用方法
$this->connect();
}
}
//实例化
$db = new Db('mysql:host=localhost;dbname=ouyangke','root','root'); //调用类时候 立即执行构造方法
//print_r($db);
if($db->pdo){
echo '<h2>连接成功</h2>';
}
//读取数据库测试
$stmt = $db->pdo->prepare('select * from user');
$stmt->execute();
foreach ($stmt->fetchAll(PDO::FETCH_ASSOC)as $user){
print_r($user);echo '<br>';
}点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号