pib
1.0.0
變更日誌
使用 npm 安裝:
$ npm install php-wasm
您需要將以下postinstall
腳本項目新增至 package.json 以確保靜態資源可供您的 Web 應用程式使用。如有必要,請確保將public/
替換為公共文檔根目錄的路徑。
{
"scripts" : {
"postinstall" : [
" cp node_modules/php-wasm/php-web.* public/ "
]
},
}
如果您使用的是更高級的捆綁程序,請使用供應商的文件來了解如何將與以下模式匹配的文件移至您的公共目錄:
./node_modules/php-wasm/php-web.*
使用 php-wasm 很簡單。
一旦庫包含在頁面中,您就可以直接從腳本標籤執行 PHP!非內聯腳本也支援 src 屬性。
< script type = " text/php " >
< ? php vrzno_run ( 'alert' , [ 'Hello, world!' ] ) ;
</ script >
首先,取得物件的實例:
const PHP = require ( 'php-wasm/PhpWeb' ) . PhpWeb ;
const php = new PHP ;
或者,在 es6 中:
import { PhpWeb as PHP } from 'php-wasm/PhpWeb' ;
const php = new PHP ;
然後,新增一個輸出監聽器:
php . addEventListener ( 'output' , ( event ) => {
console . log ( event . detail ) ;
} ) ;
請務必等到 WASM 完全加載,然後運行一些 PHP:
php . addEventListener ( 'ready' , ( ) => {
php . run ( '<?php echo "Hello, world!";' ) ;
} ) ;
使用then()
取得腳本的結果代碼:
php . addEventListener ( 'ready' , ( ) => {
php . run ( '<?php echo "Hello, world!";' ) . then ( retVal => {
// retVal contains the return code.
} ) ;
} ) ;
只要php.refresh()
不是從 Javascript 中調用,實例就會維護自己的持久記憶體。
<?php
/ / Run this over and over again ...
print ++ $ x ;
請參閱此處的實際範例
可以透過 VRZNO php 擴充功能存取 DOM。這是專門針對允許 PHP 透過 C api 存取 Javascript 的瀏覽器。它預先安裝了 php-wasm。
請參閱此處的實際範例
/ / Show an alert with vrzno_run . Note the second param is an array of args .
vrzno_run ( ' alert ' , [ ' Hello, World! ' ]);
$ oldTitle = NULL ;
$ newTitle = ' Changed@ ' . date ( ' h:i:s ' );
/ / Grab the current title.
$ oldTitle = vrzno_eval ( ' document.title ' );
/ / Change the document title.
vrzno_eval ( ' document.title = " ' . $ newTitle . ' " ' );
運行PIB
為了獲得更好的使用者體驗,推薦使用火狐瀏覽器。
建置 PIB 的最快方法是使用 Make 和 Docker。只需在檢查儲存庫後發出make
命令,它就會建置。
make
步驟:
bash configure.sh
bash build-objects.sh
bash build.sh
建置 Web 二進位文件