journal des modifications
Installer avec npm :
$ npm install php-wasm
Vous devrez ajouter l'entrée de script postinstall
suivante à votre package.json pour vous assurer que les ressources statiques sont disponibles pour votre application Web. Assurez-vous de remplacer public/
par le chemin d'accès à la racine de votre document public si nécessaire.
{
"scripts" : {
"postinstall" : [
" cp node_modules/php-wasm/php-web.* public/ "
]
},
}
Si vous utilisez un bundler plus avancé, utilisez la documentation du fournisseur pour savoir comment déplacer les fichiers correspondant au modèle suivant vers votre répertoire public :
./node_modules/php-wasm/php-web.*
Utiliser php-wasm est simple.
Une fois la bibliothèque incluse dans la page, vous pouvez exécuter PHP directement depuis une balise de script ! L'attribut src est également pris en charge pour les scripts non-inline.
< script type = " text/php " >
< ? php vrzno_run ( 'alert' , [ 'Hello, world!' ] ) ;
</ script >
Tout d’abord, récupérez une instance de l’objet :
const PHP = require ( 'php-wasm/PhpWeb' ) . PhpWeb ;
const php = new PHP ;
ou, en es6 :
import { PhpWeb as PHP } from 'php-wasm/PhpWeb' ;
const php = new PHP ;
Ensuite, ajoutez un écouteur de sortie :
php . addEventListener ( 'output' , ( event ) => {
console . log ( event . detail ) ;
} ) ;
Assurez-vous d'attendre que votre WASM soit complètement chargé, puis exécutez du PHP :
php . addEventListener ( 'ready' , ( ) => {
php . run ( '<?php echo "Hello, world!";' ) ;
} ) ;
Obtenez le code résultat de votre script avec then()
:
php . addEventListener ( 'ready' , ( ) => {
php . run ( '<?php echo "Hello, world!";' ) . then ( retVal => {
// retVal contains the return code.
} ) ;
} ) ;
Tant que php.refresh()
n'est pas appelé depuis Javascript, l'instance conservera sa propre mémoire persistante.
<?php
/ / Run this over and over again ...
print ++ $ x ;
Voir l'exemple en action ici
Le DOM est accessible via l'extension php VRZNO. Ceci est spécialement destiné au navigateur permettant à PHP d'accéder à Javascript via une API C. Il est préinstallé avec php-wasm.
Voir l'exemple en action ici
/ / 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 . ' " ' );
Exécuter PIB
Firefox est recommandé pour une meilleure expérience utilisateur.
Le moyen le plus rapide de créer PIB consiste à utiliser Make & Docker. Émettez simplement la commande make
après avoir extrait le dépôt, et il sera construit.
make
Mesures:
bash configure.sh
bash build-objects.sh
bash build.sh
pour créer le binaire Web