registro de alterações
Instale com npm:
$ npm install php-wasm
Você precisará adicionar a seguinte entrada de script postinstall
ao seu package.json para garantir que os ativos estáticos estejam disponíveis para seu aplicativo Web. Certifique-se de substituir public/
pelo caminho para a raiz do seu documento público, se necessário.
{
"scripts" : {
"postinstall" : [
" cp node_modules/php-wasm/php-web.* public/ "
]
},
}
Se você estiver usando um bundler mais avançado, use a documentação do fornecedor para saber como mover os arquivos que correspondem ao seguinte padrão para seu diretório público:
./node_modules/php-wasm/php-web.*
Usar php-wasm é fácil.
Depois que a biblioteca estiver incluída na página, você poderá executar o PHP diretamente de uma tag de script! O atributo src também é compatível com scripts não embutidos.
< script type = " text/php " >
< ? php vrzno_run ( 'alert' , [ 'Hello, world!' ] ) ;
</ script >
Primeiro, pegue uma instância do objeto:
const PHP = require ( 'php-wasm/PhpWeb' ) . PhpWeb ;
const php = new PHP ;
ou, em es6:
import { PhpWeb as PHP } from 'php-wasm/PhpWeb' ;
const php = new PHP ;
Em seguida, adicione um ouvinte de saída:
php . addEventListener ( 'output' , ( event ) => {
console . log ( event . detail ) ;
} ) ;
Certifique-se de esperar até que seu WASM esteja totalmente carregado e então execute algum PHP:
php . addEventListener ( 'ready' , ( ) => {
php . run ( '<?php echo "Hello, world!";' ) ;
} ) ;
Obtenha o código de resultado do seu script com then()
:
php . addEventListener ( 'ready' , ( ) => {
php . run ( '<?php echo "Hello, world!";' ) . then ( retVal => {
// retVal contains the return code.
} ) ;
} ) ;
Contanto que php.refresh()
não seja chamado de Javascript, a instância manterá sua própria memória persistente.
<?php
/ / Run this over and over again ...
print ++ $ x ;
Veja o exemplo em ação aqui
O DOM pode ser acessado através da extensão VRZNO php. Isto é especialmente para o navegador que permite que o PHP acesse Javascript através de uma API C. Ele vem pré-instalado com php-wasm.
Veja o exemplo em ação aqui
/ / 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 . ' " ' );
Executar PIB
Firefox é recomendado para uma melhor experiência do usuário.
A maneira mais rápida de construir PIB é usando Make & Docker. Basta emitir o comando make
após verificar o repositório e ele será compilado.
make
Passos:
bash configure.sh
bash build-objects.sh
bash build.sh
para construir o binário da web