溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

php代碼轉(zhuǎn)c的實(shí)現(xiàn)方法

發(fā)布時(shí)間:2020-10-10 15:01:05 來(lái)源:億速云 閱讀:250 作者:小新 欄目:編程語(yǔ)言

小編給大家分享一下php代碼轉(zhuǎn)c的實(shí)現(xiàn)方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

php代碼轉(zhuǎn)c的實(shí)現(xiàn)方法:首先安裝需要依賴的包;然后指定CMake的位置;接著通過(guò)“export HPHP_HOME=`pwd`”等命令進(jìn)行編譯;最后直接編譯為c++代碼并執(zhí)行即可。

php代碼轉(zhuǎn)c的實(shí)現(xiàn)方法

把PHP代碼編譯成C/C++代碼,使你的php跑得更快

FaceBook 發(fā)布了一款能將php代碼轉(zhuǎn)換為C++的工具,hiphop

如果你的網(wǎng)站很大,類似新浪這樣的大型門戶,可以考慮。

目前已經(jīng)在CentOS和ubuntu等Linux服務(wù)器上編譯通過(guò)。

安裝:

一、需要依賴的包

cmake 2.6 is the minimum version
g++/gcc 4.3 is the minimum version
Boost 1.37 is the minimum version
flex
bison
re2c
libmysql
libxml2
libmcrypt
libicu 4.2 is the minimum version
openssl
binutils
libcap
gd
zlib
tbb Intel's Thread Building Blocks
Oniguruma
libpcre
libexpat
libmemcached

下面的包需要在源代碼的基礎(chǔ)上打補(bǔ)丁

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說(shuō),可以提高50%左右的性能,前提是php代碼中不能含有eval這種很少用的方法。

四、使用hphp

環(huán)境設(shè)置:

cd .. # 進(jìn)入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:編譯到一個(gè)臨時(shí)文件夾,并執(zhí)行編譯好的c++程序

hphp/hphp test.php --keep-tempdir=1 --log=3

/tmp/hphp_p6vSsP/program 這個(gè)根據(jù)你自己生成的運(yùn)行

3:編譯php為一個(gè)服務(wù),并在指定端口運(yùn)行

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

以上是php代碼轉(zhuǎn)c的實(shí)現(xiàn)方法的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI