利用PHP扩展vld查看PHP opcode操作步骤
首先下载最新版vld扩展:
复制代码 代码如下:
~/public_html/php-5.3.13/ext> wget http://pecl.php.net/get/vld-0.11.2.tgz
~/public_html/php-5.3.13/ext> tar zxvf vld-0.11.2.tgz
~/public_html/php-5.3.13/ext> cd vld-0.11.2/
接下来编译安装vld扩展:
复制代码 代码如下:
~/public_html/php-5.3.13/ext/vld-0.11.2> phpize
~/public_html/php-5.3.13/ext/vld-0.11.2> ./configure --with-php-config=/usr/local/services/php/bin/php-config --enable-vld
~/public_html/php-5.3.13/ext/vld-0.11.2> make
~/public_html/php-5.3.13/ext/vld-0.11.2> sudo make install
Installing shared extensions: /usr/local/services/php/lib/php/extensions/no-debug-non-zts-20090626/
最后将生成的vld.so复制到extension_dir目录下:
复制代码 代码如下:
~/public_html/php-5.3.13/ext/vld-0.11.2> cd /usr/local/services/php/lib/php/extensions/no-debug-non-zts-20090626/
/usr/local/services/php/lib/php/extensions/no-debug-non-zts-20090626> sudo cp vld.so /usr/local/services/php/extensions/
然后修改php.ini文件,添加如下配置:
复制代码 代码如下:
extension=vld.so
接下来创建test.php文件:
复制代码 代码如下:
$a = "hello world";
echo $a . PHP_EOL;
使用cli来执行,查看生成的opcode:
复制代码 代码如下:
~/public_html> php -dvld.active=1 test.php
Finding entry points
Branch analysis from position: 0
Return found
filename: /home/zhanhailiang/public_html/test.php
function name: (null)
number of ops: 4
compiled vars: !0 = $a
line # * op fetch ext return operands
---------------------------------------------------------------------------------
3 0 > ASSIGN !0, 'hello+world'
5 1 CONCAT ~1 !0, '%0A'
2 ECHO ~1
6 3 > RETURN 1
branch: # 0; line: 3- 6; sop: 0; eop: 3
path #1: 0,
hello world

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

mPDF
mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna