<?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>'; }
点击 "运行实例" 按钮查看在线实例