<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                在前面的章節中,我們了解到一個PHP文件在服務器端的執行過程包括以下兩個大的過程: 1. 遞給php程序需要執行的文件, php程序完成基本的準備工作后啟動PHP及Zend引擎, 加載注冊的擴展模塊。 1. 初始化完成后讀取腳本文件,Zend引擎對腳本文件進行詞法分析,語法分析。然后編譯成opcode執行。如過安裝了apc之類的opcode緩存, 編譯環節可能會被跳過而直接從緩存中讀取opcode執行。 在第二步中,詞法分析、語法分析,編譯中間代碼,執行中間代碼等各個部分統稱為Zend虛擬機。與Java、C#等編譯型語言相比,PHP少了一個手動編譯的過程,它們無需編譯即可運行,我們稱其為解釋性語言。Java有自己的Java虛擬機,它在多個平臺上實現統一語言;C#有自己的.NET虛擬機,它在單一平臺實現多種語言;PHP跟他們一樣,也有屬于自己的Zend虛擬機。它們在本質是相同的,它們都是抽象的計算機。這些虛擬機都是在某種較底層的語言上抽象出另外一種語言,有自己的指令集,有自己的內存管理體系。它們最終都會將抽象級別較高的語言實現轉化為抽象級別較低的語言實現,并且實現其它輔助功能,如內存管理,垃圾回收等機制,以減少程序員在具體實現上的工作,從而可以將更多的時間和精力投入到業務邏輯中。從抽象層次看,Zend虛擬機比Java等語言更高級一些,這里的高級不是說功能更強大或效率更高,簡單點說,Zend虛擬機離真正的機器實現更遠一些。最近這些年,語言的發展只是不斷的抽象,不斷的遠離機器,沒有根本性的變化。 本章,我們從虛擬機的前世今生講起,敘述Zend虛擬機的實現原理,關鍵的數據結構,并其中穿插一個關于語法實現的示例和源碼加密解密的過程說明。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看