本文目錄一覽:
- 1、能講講PHP面向對象的編程嗎
- 2、新手入門php要學哪些內容呢?
- 3、php面向對象全攻略 (三)特殊的引用「$this」的使用
- 4、學PHP有什麼技術
- 5、什麼是php面向對象及面向對象的三大特性
- 6、PHP的面向對象究竟是什麼概念?山東
能講講PHP面向對象的編程嗎
在面向對象的程序設計(英語:Object-oriented programming,縮寫:OOP)中,對象是一個由信息及對信息進行處理的描述所組成的整體,是對現實世界的抽象。
在現實世界裡我們所面對的事情都是對象,如計算機、電視機、自行車等。
對象的主要三個特性:
對象的行為:可以對 對象施加那些操作,開燈,關燈就是行為。
對象的形態:當施加那些方法是對象如何響應,顏色,尺寸,外型。
對象的表示:對象的表示就相當於身份證,具體區分在相同的行為與狀態下有什麼不同。
比如 Animal(動物) 是一個抽象類,我們可以具體到一隻狗跟一隻羊,而狗跟羊就是具體的對象,他們有顏色屬性,可以寫,可以跑等行為狀態。
新手入門php要學哪些內容呢?
1、WEB基礎
要知道網站是什麼東西,所使用的協議是怎麼工作的,怎樣把網站放在伺服器上。
2、HTMLphp
HTMLphp是嵌入在HTML的語言,所以HTML是必須的。可以用HTML寫出簡單的靜態的頁面,放在本機的伺服器上看看效果。
3、DIV+CSS
能夠用DIV+CSS布局做出漂亮的精美靜態網頁。
4、php基礎
學習php基礎,如php語法,php變數,php流程式控制制,php函數,php數組應用,php字元串處理,php常用模塊,php文件處理,php動態圖像處理,會話控制等,就可以把靜態頁面變成動態的。這個階段比較枯燥,主要是記憶,必須能夠熟練應用。
5、MySQL
網站往往包含大量的信息,這些信息不可能都放在程序(php文件)中,需要MySQL來儲存大量的數據信息。
6、Javascript
掌握了以上內容就可以搭建一個php基礎網站,但是還需要靠Javascript來完成網站的特效和信息驗證等。
7、php高級
作為一個可以上線運營的全功能網站,還要繼續學習php高級知識,如php面向對象,數據抽象層PDO,MEMCACHE,高級SESSION,php的設計模式,MVC,smarty模板,主流框架的解讀等內容,這個階段需要多讀優質的開源代碼,多寫代碼。
8、Linux
正如大家所熟知的php較佳的搭配是LAMP(Linux+Apache+MySQL+Php)或LNMP(Linux+Nginx+MySQL+Php),那麼顯然在Linux系統下的php網站比在Windows下兼容性好,基於此我們需要知道在Linux下搭建php環境的方法以及Linux的日常管理命令,以便我們網站的日常管理運營。
9、項目相關
這個階段首先需要了解項目開發流程,需求分析,程序設計說明書,資料庫設計說明書,編碼規範,大流量/大數據架構,MYSQL深度優化,全文索引等內容。
目前為止學到這個階段,已經可以算是php小牛了,要繼續向php大牛進發就需要參與開發大型網站項目,以此練手。北大青鳥認為參與大項目開發,實踐為主。通過這階段的學習就可以自主做企業網站、論壇、網頁遊戲等。
php面向對象全攻略 (三)特殊的引用「$this」的使用
7.特殊的引用「$this」的使用
現在我們知道了如何訪問對象中的成員,是通過「對象-成員」的方式訪問的,這是在對
象的外部去訪問對象中成員的形式,那麼如果我想在對象的內部,讓對象里的方法訪問本對
象的屬性,或是對象中的方法去調用本對象的其它方法這時我們怎麼辦?因為對象裡面的所
有的成員都要用對象來調用,包括對象的內部成員之間的調用,所以在PHP
裡面給我提供了
一個本對象的引用$this,每個對象裡面都有一個對象的引用$this
來代表這個對象,完成對象
內部成員的調用,this
的本意就是「這個」的意思,上面的實例裡面,我們實例化三個實例
對象$P1、$P2、$P3,這三個對象裡面各自存在一個$this
分別代表對象$p1、$p2、$p3。
通過上圖我們可以看到,$this
就是對象內部代表這個對象的引用,在對象內部和調用本
對象的成員和對象外部調用對象的成員所使用的方式是一樣的。
$this-屬性$this-name;
$this-age;
$this-sex;
$this-方法$this-say();
$this-run();
修改一下上面的實例,讓每個人都說出自己的名字,性別和年齡:
代碼片段
複製代碼
代碼如下:
?php
class
Person{
//下面是人的成員屬性
var
$name;
//人的名字
var
$sex;
//人的性別
var
$age;
//人的年齡
//下面是人的成員方法
function
say(){//這個人可以說話的方法
echo
“我的名字叫:”.$this-name.”
性別:”.$this-sex.”
我的年齡是:”.$this-age.”br”;
}
function
run(){
//這個人可以走路的方法
echo
“這個人在走路”;
}
}
$p1=new
Person();
//創建實例對象$p1
$p2=new
Person();
//創建實例對象$p2
$p3=new
Person();
//創建實例對象$p3
//下面三行是給$p1對象屬性賦值
$p1-name=”張三”;
$p1-sex=”男”;
$p1-age=20;
//下面訪問$p1對象中的說話方法
$p1-say();
//下面三行是給$p2對象屬性賦值
$p2-name=”李四”;
$p2-sex=”女”;
$p2-age=30;
//下面訪問$p2對象中的說話方法
$p2-say();
//下面三行是給$p3對象屬性賦值
$p3-name=”王五”;
$p3-sex=”男”;
$p3-age=40;
//下面訪問$p3對象中的說話方法
$p3-say();
?
輸出結果
我的名字叫:張三性別:男我的年齡是:20
我的名字叫:李四性別:女我的年齡是:30
我的名字叫:王五性別:男我的年齡是:40
分析一下這個方法:
代碼片段
function
say(){
//這個人可以說話的方法
echo
“我的名字叫:”.$this-name.”
性別:”.$this-sex.”
我的年齡是:”.$this-age.”br”;
}
在$p1、$p2
和$p3
這三個對象中都有say()這個方法,$this
分別代表這三個對象,調用相應的屬性,列印出屬性的值,這就是在對象內部訪問對象屬性的方式,如果相在say()這個方
法里調用run()這個方法也是可以的,在say()這個方法中使用$this-run()的方式來完成調用。
學PHP有什麼技術
學習內容:
html div+css
php基礎知識(面向過程),及mysql資料庫
php高級部分(面向對象),及pdo數據處理
php特級部分(框架的應用)
PHP(外文名:PHP: Hypertext Preprocessor,中文名:「超文本預處理器」)是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點,利於學習,使用廣泛,主要適用於Web開發領域。PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。它可以比CGI或者Perl更快速地執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML(標準通用標記語言下的一個應用)文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;PHP還可以執行編譯後代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。
什麼是php面向對象及面向對象的三大特性
面向對象是一種編程思維
面向對象的三大特性:
封裝
繼承
多態
PHP的面向對象究竟是什麼概念?山東
這樣說吧,
在我們初步學習的面向過程程序設計方法,比如C語言中:
程序=演算法+數據結構;
但是面向對象程序設計方法,如C++,和後來的PHP等語言:
程序=(演算法+數據結構);
就是說演算法與數據結構組成一個整體,而這個整體就是類,把類詳細化了就是一個一個具體的對象。
比如定義一個類,再用類聲明一個對象:
class Student()
{….functions()
protected:
int a;
char b;
}
Student xiaobai;
Student就是一個類,xiaobai就是一個對象。
像樓主說的那樣,對象除了封裝方法(我們也可以稱之為演算法)之外,還可以有一些數據成員,比如上面的a,b,所以類封裝不只封裝了演算法,還有這些演算法之下的數據!
從某方面來說,面向對象是函數的升級,因為這類也是可以在主函數外定義的,這也可以將其看作是一種特殊的函數(個人看法啊),我們可以調用這「函數」中的數據和方法。所以樓主說的在廣義上也是成立的!
另外,建議樓主先閱讀下C++有關課程的關於面向對象的論述,可能會對你有所幫助!
▲
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/237581.html