(PECL bcompiler >= 0.4)
bcompiler_write_exe_footer — Derlenmiş kodun başlangıç konumunu ve imzasını, exe türü bir dosyanın sonuna yazar
$dosyatanitici
, int $baslangickonum
) : boolBir EXE (veya kendiliğinden çalıştırılabilir) dosya 3 bölümden oluşur:
arayüz
(çalıştırılabilir kod, örneğin derlenmiş bir C
kodu) PHP yorumlayıcısını, bcompiler genişletmesini, derlenmiş kodu
yükler ve belirli bir işlev (main) veya sınıf yöntemi
(main::main
) için çağrı başlatır.
Arayüz elde etmek için bcompiler examples/embed CVS dizinininde bulunan phpe.c php_embed-based kodunu derleyebilirsiniz.
Başarı durumunda TRUE
, başarısızlık durumunda FALSE
döner.
Örnek 1 - bcompiler_write_exe_footer() örneği
<?php
/* çıktı dosyasını oluştur (example.exe) */
$fh = fopen("example.exe", "w");
/* 1) arayüz yaz (phpe.exe) */
$size = filesize("phpe.exe");
$fr = fopen("phpe.exe", "r");
fwrite($fh, fread($fr, $size), $size);
$startpos = ftell($fh);
/* 2) derlenmiş kod yaz */
bcompiler_write_header($fh);
bcompiler_write_class($fh, "myclass");
bcompiler_write_function($fh, "main");
bcompiler_write_footer($fh);
/* 3) EXE dosya sonu yaz */
bcompiler_write_exe_footer($fh, $startpos);
/* çıktı dosyasını kapat */
fclose($fh);
?>
Bu işlev DENEYSELDİR. Bu işlevin davranışı, ismi ve belgeleri PHP'nin sonraki sürümlerinde hiçbir duyuru yapılmaksızın değiştirilebilir. Bu riski göze alamayacaksanız bu işlevi kullanmayın.