看板 PHP 關於我們 聯絡資訊
※ 引述《HuangJC (吹笛牧童)》之銘言: : ※ 引述《foxzgerald (Algorithms)》之銘言: : : 名詞擴展是什麼意思@@? : 就是一些懂歷史的人才會感受到的事 : 比如 CMOS,在組裝電腦時被講成 BIOS 加電池,或者電腦時鐘 : 但其實 CMOS 是一種製程,它非常省電,因此加個電池就可以獨立運作很久 : 這種獨立運作很久的優點被拿來做電腦時鐘(因為沒插電時時鐘還是要跑) : 例子很多,總之是懂歷史就會發現名詞的擴展 感覺上是名詞的誤用 XD : : http://zh.wikipedia.org/w/index.php?title=Php&variant=zh-tw : : http://zh.wikipedia.org/w/index.php?title=Zend&variant=zh-tw : : 請看一下 PHP 的發展史和 Zend 的簡介 : : Zend 是家公司,該公司開發了近代 PHP(3.0+)的 Parser (Zend Engine) : : 單獨存在是什麼意思? : 一開始我學 PHP 時以為它不能單獨存在 : (雖然它有 exe,但有很多 exe 只能當 DLL 用;沒有獨立的 UI 及使用方法) : 我以為它是 Apache 外掛模組的一部份;不必是同單位開發,但它無法獨立執行 : 直到發現命令列,才更知道它的輸出就是文字,文字再送給 Apache 送出 : Zend 是 PHP 核心我知道 : 但能不能下載一個獨立版本,比如 Zend 2.0 : 它就有執行檔,且能執行一些有意義的功能? : 如果這樣我就很困惑了,因為 Zend 勢必有自己的 spec & 語法,PHP 又一個語法 : 或者說 Zend 是 Parser 核心,換掉一些外部模組就可以開發另一套語言 : 但如果它不乖乖只為 PHP 服務,而是獨立釋出版本 : 那我們就可以看到很多語言打架了 據我所知,PHP的直譯器現在都是使用 Zend開發的版本, 我還未見過其他版本的直譯器; PHP的語言規格則是由 PHP使用社群和 Zend共同制定。 (如果我認知有誤,希望有強者指正) : : http://www.zend.com/ : : http://en.wikipedia.org/wiki/Zend_Framework : : 請看一下 Zend 公司的產品與服務 以及 Zend Framework 的簡介 : : Zend Framework 是由 Zend 主導與 PHP使用社群共同開發的一套 Framework : : 我不知道你所謂的{要安裝}是指什麼 = =? : 因為我的 PHP 內已經可以查到 Zend Version : 所以是內建 : 而我原本以為那是還要另外安裝的東西,裝了會加強變成 IDE 套件 : 畢竟如果一個語言要能步進執行(像 VC 一樣好用),又可以監看變數 : 那麼裝些直接接觸核心的模組是必要的 因為 PHP的直譯器是 Zend Engine 2,所以自然能查到 Zend (Engine)的 Version : : 不太懂最後一個問題 : : PHP 的常用的 Debugger 有: XDebug, DBG Debugger, Zend Debug : 我的硬碟版 help file 有提到 Zend,我試了一下其中的指令,不能用 : 如果說我的 Zend 不完整(有些模組是可以分好幾個子模組安裝的) : 但 XDebug 倒是運作了 : 如果我沒看錯,XDebug 是呼叫 Zend 寫出的東西 : 基本上我對 Framework 的概念像 MFC 之於 VC,它是完全有開放的 source code : 這觀點來看 CakePHP 是完全可類比的,我可以去 Trace CakePHP 來獲得更多的了解 : 不過 Zend 比較不像這樣,因為它本身就是 PHP 核心模組 Zend 是一間公司,他有很多產品,其中包含了PHP的直譯器、 以及 PHP眾多 Frameworks 中的一支-- Zend Framework 由於目前是要釐清名詞的意義,而在語境(context)混沌不明的情況下, 建議明確寫出討論的標的,否則討論半天只是各自表述: 若這段指的是 Zend Framework 請明確寫出 Zend Framework, 若這段指的是 Zend Engine:由於它是 PHP的直譯器, 直譯器的角色自然與 Framework不同,所以當然無法與 CakePHP類比。 : 這使我相信它寫出來的新函式有特異功能 : 只怕根本是用底層呼叫寫出來的 : 可以說是另一組新的函式庫,而我們也不能 Trace 進去了 基本上只能追蹤 PHP的部分。 PHP內建或外掛上來的函式是由外部的語言實作(通常是 C寫的) PHP藉由直譯器的協助而得以呼叫這些函式。 單是透過PHP的Debugger,我想你只能追蹤 PHP的部分、 而無法追蹤那些函式內部的內容。 : 這樣的東西,我會好奇它在補強哪一方面 : 因為我硬碟版 help file 剛好在這裏壞掉,只顯示一片空白 : 所以還在網路上找答案 : 而 Smarty 好像也和 Zend 攀親帶故喔? 我猜你還是不了解 Zend 和 PHP 之間的關係~"~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.40.145.152 ※ 編輯: foxzgerald 來自: 114.40.145.152 (05/15 03:47)