php代碼轉(zhuǎn)換c代碼的方法:首先需要依賴的包,并在源代碼的基礎(chǔ)上打補??;然后指定CMake的位置;接著進行編譯;最后使用hphp直接編譯為c++代碼并執(zhí)行即可。
奉新網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)建站2013年至今到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。
把PHP代碼編譯成C/C++代碼,使你的php跑得更快
推薦:《PHP教程》
FaceBook 發(fā)布了一款能將php代碼轉(zhuǎn)換為C++的工具,hiphop
如果你的網(wǎng)站很大,類似新浪這樣的大型門戶,可以考慮。
目前已經(jīng)在CentOS和ubuntu等Linux服務(wù)器上編譯通過。
安裝:
一、需要依賴的包
cmake2.6 is the minimum version g++/gcc4.3 is the minimum version Boost1.37 is the minimum version flex bison re2c libmysql libxml2 libmcrypt libicu4.2 is the minimum version openssl binutils libcap gd zlib tbbIntel's Thread Building Blocks Oniguruma libpcre libexpat libmemcached
下面的包需要在源代碼的基礎(chǔ)上打補丁
libcurl src/third_party/libcurl.fb-changes.diff libevent 1.4 src/third_party/libevent-1.4.13.fb-changes.diff OR src/third_party/libevent-1.4.14.fb-changes.diff
二、指定CMake的位置
export CMAKE_PREFIX_PATH=/home/user
三、編譯
cd /home/user/dev git clone git://github.com/facebook/hiphop-php.git cd hiphop-php git submodule init git submodule update export HPHP_HOME=`pwd` export HPHP_LIB=`pwd`/bin make cmake .
據(jù)fackbook說,可以提高50%左右的性能,前提是php代碼中不能含有eval這種很少用的方法。
四、使用hphp
環(huán)境設(shè)置:
cd .. # 進入hphp的根目錄,源碼的存放目錄 export HPHP_HOME=`pwd` export HPHP_LIB=`pwd`/bin # if you followed the Ubuntu 9.10 instructions, you also need export CMAKE_PREFIX_PATH=`/bin/pwd`/../
有若干種模式
1:直接編譯為c++代碼并執(zhí)行
hphp/hphp test.php
2:編譯到一個臨時文件夾,并執(zhí)行編譯好的c++程序
hphp/hphp test.php --keep-tempdir=1 --log=3 /tmp/hphp_p6vSsP/program 這個根據(jù)你自己生成的運行
3:編譯php為一個服務(wù),并在指定端口運行
hphp/hphp test.php --keep-tempdir=1 --log=3 /tmp/hphp_p6vSsP/program -m server -p 8080 curl http://localhost:8080/test.php sudo /tmp/hphp_p6vSsP/program -m daemon