本文目錄一覽:
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’], ‘br’;
}
過程的代碼給人感覺比較亂,不易管理,以下實現以上代碼一樣的功能,但代碼清楚多了。
面向對象就是把常用的功能封裝為一個類,類由屬性和方法組成:
把以上過程代碼封裝成類,以文件形式保存為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’], ‘br’;
}
PHP的面向對象究竟是什麼概念?山東
這樣說吧,
在我們初步學習的面向過程程序設計方法,比如C語言中:
程序=演算法+數據結構;
但是面向對象程序設計方法,如C++,和後來的PHP等語言:
程序=(演算法+數據結構);
就是說演算法與數據結構組成一個整體,而這個整體就是類,把類詳細化了就是一個一個具體的對象。
比如定義一個類,再用類聲明一個對象:
class Student()
{….functions()
protected:
int a;
char b;
}
Student xiaobai;
Student就是一個類,xiaobai就是一個對象。
像樓主說的那樣,對象除了封裝方法(我們也可以稱之為演算法)之外,還可以有一些數據成員,比如上面的a,b,所以類封裝不只封裝了演算法,還有這些演算法之下的數據!
從某方面來說,面向對象是函數的升級,因為這類也是可以在主函數外定義的,這也可以將其看作是一種特殊的函數(個人看法啊),我們可以調用這「函數」中的數據和方法。所以樓主說的在廣義上也是成立的!
另外,建議樓主先閱讀下C++有關課程的關於面向對象的論述,可能會對你有所幫助!
▲
什麼是php面向對象及面向對象的三大特性
面向對象是一種編程思維
面向對象的三大特性:
封裝
繼承
多態
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/182918.html