php面向对象有什么用

 
  
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。 

面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。
php程序编写分总分两种方式,分别为面向过程和面向对象,用两者比较你会更容易理解些
以下数据库操作为例:
面向过程:
$conn = mysql_connect('127.0.0.1', 'root', '123456') or die('连接不成功!');
mysql_select_db('test', $conn) or die('数据库不存在!');
$queryid = mysql_query("select * from sort");
while ($rs = mysql_fetch_assoc($queryid)) {
echo $rs['name'], '
';
}
过程的代码给人感觉比较乱,不易管理,以下实现以上代码一样的功能,但代码清楚多了。
面向对象就是把常用的功能封装为一个类,类由属性和方法组成:
把以上过程代码封装成类,以文件形式保存为db.php
class db {
private $conn; //属性
private $queryid; //属性
//构造函数
public function db($host, $dbuser, $dbpasswd, $dbname) {
$this->conn = mysql_connect($host, $dbuser, $dbpasswd) or die('连接不成功!');
mysql_select_db($dbname, $this->conn) or die('数据库不存在!');
}
//查询方法
public function query($sql) {
$this->queryid = mysql_query($sql, $this->conn);
}
public function fetch_assoc() {
return mysql_fetch_assoc($this->queryid);
}
}

//在a.php文件中实例化,代码使用变得简结和容易理解,代码的重用性
inclode('db.php');
$db = new db('127.0.0.1', 'root', '123456', 'test');
$db->query("select * from sort");
while ($rs = $db->fetch_assoc()) {
echo $rs['name'], '
';
}

你可能感兴趣的:(php面向对象有什么用)