Ⅰ php底層原理 php是如何運行的
1、PHP動態語言執行過程:拿到一段代碼後,經過詞法解析、語法解析等階段後,源程序會被翻譯成一個個指令(opcodes),然後ZEND虛擬機順次執行這些指令完成操作。PHP本身是用C實現的,因此最終調用的也是C的函數,實際上,我們可以把PHP看做一個C開發的軟體。
2、PHP的4層運行體系:
(1)Zend引擎:Zend整體用純C實現,是PHP的內核部分,他將PHP代碼翻譯(詞法、語法解析等一系列編譯過程)為可執行opcode的處理並實現相應的處理方法、實現了基本的數據結構(如:hashtable、OO)、內存分配機制及管理、提供了相應的api方法供外部調用,是一切的核心,所有的外圍功能均圍繞Zend實現。
(2)Extensions:圍繞著Zend引擎,extensions通過組件式的方式提供各種基礎服務,我們常見的各種內置函數(array系列)、標准庫等都是通過extension來實現,用戶也可以根據需要實現自己的extension的典型應用)。
(3)Sapi:Sapi全稱,也就是服務端應用編程介面,Sapi通過一系列鉤子函數,使得PHP可以和外圍交互數據,這是PHP非常優雅和成功的設計,通過sapi成功的將PHP本身和上層應用解耦隔離,PHP可以不再考慮如何針對不同應用進行兼容,而應用本身也可以針對自己的特點實現不同的處理方式。
(4)上層應用:這就是我們平時編寫的PHP程序,通過不同的spai方式得到各種各樣的應用模式,如何通過webserver實現web應用、在命令行下已腳本方式運行等等。
Ⅱ 什麼是php OO類庫
OO即是面向對象的意思
OO類當然是面向對象類庫了。
這樣的類庫很多,比如樓上提到的什麼pear
還有zend 的了,
現在中文有個TP。
如果想了解給我留言吧。
歡迎到www.webcook.cn 提供PHP的資料
Ⅲ php是用什麼語言開發的,c語言嗎
php的解釋器是用c寫的,解釋器相當於弱編譯器,但是php本身並不基於某種底層語言。
PHP在伺服器端執行的腳本語言,與C語言類似,是常用的網站編程語言。它驅動全球超過2億多個網站,有全球超過81.7%的公共網站在伺服器端採用PHP。PHP常用的數據結構都內置了,使用起來方便簡單,也一點都不復雜,表達能力相當靈活。
(3)phpoo擴展閱讀
主要特點
(一)開源性和免費性
由於PHP的解釋器的源代碼是公開的,所以安全系數較高的網站可以自己更改PHP的解釋程序。另外,PHP 運行環境的使用也是免費的。
(二)快捷性
PHP是一種非常容易學習和使用的一門語言,它的語法特點類似於C語言,但又沒有C語言復雜的地址操作,而且又加入了面向對象的概念,再加上它具有簡潔的語法規則,使得它操作編輯非常簡單,實用性很強。
(三)資料庫連接的廣泛性
PHP可以與很多主流的資料庫建立起連接,如MySQL、ODBC、Oracle等,PHP是利用編譯的不同函數與這些資料庫建立起連接的,PHPLIB就是常用的為一般事務提供的基庫。
參考資料來源:網路-PHP
Ⅳ 會PHP(懂點PHP里的OO)學.Net要多久
php和.net完全是兩種思想,
會php學.net完全是沒有一點優勢的,
所以建議不要學.net了,
反對理由一
誰說會php做應用程序,不可以,你去看一看,writely
以後大家用的office word都是net版的了,
反對理由二
php中文文檔很多,
你可以自己下一個php中文手冊,(chm),
再下一個mysql的手冊,因為php的開源,所以文檔很多,有點亂,
但有很多版本的,你只是找不到哪個是正版的,而不可能是找不到,
其實都不錯,
http://blog.xunlei.com/web/category.html?uin=haoyoull&category_id=74
.net是微軟體一個公司想出來的東東,
php是千百萬程序網站支持的,是一個很大團體,
理由三,
php程序員工作機會多,工資高
理由四
php是開源的,將來想改什麼,都可以,微軟可不讓你改,除非你花他幾個億,讓他們改,
理由五,
php是跨平台的,
以後上海政府都用linux辦公了,還有現在伺服器90%都是linux,unix
100%銀行都在用unix
做電影鐵達尼都用linux
理由六
.net難學的很,
理由七
mysql是最快的,
你可能在很多地方看到oracle是最快的,
但你要是按我的測試方法, mysql是最快的,(在我們的家用電腦上裝十個測試,哈哈oracle那麼大,你裝一個就慢死了,mysql裝一百個都沒問題)
理由八
.net微軟自己也沒有什麼好作品,看來是沒前圖了,
理由九
php里朋友多,
理由十
.net做的東西bug多
理由十一
中國有自己有自己的系統,紅旗\中標\都是php平台,
用php就是愛國
理由十二
.......
Ⅳ php框架哪個好用,容易上手
你好,其實現在主流的PHP框架都各有優勢,而且都可以完成php開發者的基本要求。但是其實在使用率上,每個區域都是不一樣的。 在中國,thinkphp的使用率肯定是最高的,而在外國各個框架的使用率也不一樣。除了框架的使用體驗有關系外,其實也和可查詢的資料有關系,作為國產框架thinkphp的資料自然是最多的。也正是這個原因thinkphp在中國的使用率非常高,同理類似Laravel、yii2這些外國比較流行的框架也有一部分是這個原因,當然不可否認它們的使用體驗也很不錯。我個人喜歡用CI,這里也要說到地域和環境了,我所在的城市,還有我身邊的程序員朋友也都是先用CI的,這個也有一定的帶動作用
我建議你可以去看看一些招聘網站上,你所在的城市,或者你想去發展的城市所要求的PHP工程師所需要的框架是什麼。然後再去針對的去學習。我是先學習CI框架的,因為這個框架比較適合新人學習,用的人 也蠻多的。
Ⅵ PHP的問題
app_db::query
這是調用類的方法
:: 表示調用 靜態方法...app_db 是類名...query 是方法
(-> 調用非靜態方法)
..
具體詳細. lz 可以去查閱 php oo 方面的知識....
Ⅶ PHP 如果要自己建立一套框架,需要了解哪些知識呢有相關知識的書籍介紹嗎
個人覺得構建一套框架,首先要明確一下目錄結構:
--配置(config)
--類庫(libs)
--後台(可以不獨立)
--數據處理(c)
--業務邏輯(m)
--展現(v)
--index.php
框架成型,最重要包括:
1、資料庫的鏈接基類封裝(連接、增、刪、改、查等),及具體表(例用戶表、文章表)對基類的繼承實現;
2、業務邏輯文件的處理,可以每個功能對應一個文件,也可以利用oo思想,每個函數對應一個操作;
3、對於ajax調用的介面文件,可以考慮統一文件目錄處理;
4、基本數據校驗、分頁函數、url處理等函數 的封裝;
5、展現層實現方式多樣,可以考慮引用smarty模版引擎;
以上只是提供部分思路,多學習、多思考、多練習 堅持積累一段時間之後你就會有更多的收獲~~
Ⅷ 什麼是php OO類庫
OO即是面向對象的意思
OO類當然是面向對象類庫了。
這樣的類庫很多,比如樓上提到的什麼pear
還有zend
的了,
現在中文有個TP。
如果想了解給我留言吧。
歡迎到www.webcook.cn
提供PHP的資料