ホームページ > バックエンド開発 > PHPの問題 > PHPコードをCコードに変換する方法

PHPコードをCコードに変換する方法

藏色散人
リリース: 2023-03-02 20:10:02
オリジナル
3240 人が閲覧しました

php コードを C コードに変換する方法: まず、パッケージを利用し、ソース コードに基づいてパッチを適用する必要があります。次に、CMake の場所を指定し、コンパイルします。最後に、hphp を使用して直接コンパイルします。 cコードを作成して実行するだけです。

PHPコードをCコードに変換する方法

PHP コードを C/C コードにコンパイルして PHP の実行を高速化します

推奨事項: " PHP チュートリアル"

FaceBook は、PHP コードを C に変換できるツールをリリースしました。hiphop

Web サイトが大規模な場合は、Sina Portal などを検討できます。

これはコンパイルされ、CentOS や ubuntu などの Linux サーバーに渡されます。

インストール:

1. 依存パッケージ

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
ログイン後にコピー

次のパッケージはソース コードに基づいてパッチを適用する必要があります

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
ログイン後にコピー

2. CMake 位置を指定します

export CMAKE_PREFIX_PATH=/home/user
ログイン後にコピー

3. コンパイル

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 .
ログイン後にコピー

Facebook によると、めったに使用されない eval メソッドを PHP コードに含めることができない場合、パフォーマンスは約 50% 向上する可能性があります。

4. hphp を使用します

環境設定:

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 コードに直接コンパイルして実行

hphp/hphp test.php
ログイン後にコピー

2: 一時フォルダーにコンパイルし、コンパイルされた C プログラムを実行します。

hphp/hphp test.php --keep-tempdir=1 --log=3
/tmp/hphp_p6vSsP/program 这个根据你自己生成的运行
ログイン後にコピー

3: php をサービスとしてコンパイルし、指定されたポートで実行します。

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コードをCコードに変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
c php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート