سجل التغيير
التثبيت باستخدام npm:
$ npm install php-wasm
ستحتاج إلى إضافة إدخال البرنامج النصي التالي postinstall
إلى ملف package.json الخاص بك للتأكد من توفر الأصول الثابتة لتطبيق الويب الخاص بك. تأكد من استبدال 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 ;
انظر المثال في العمل هنا
يمكن الوصول إلى DOM عبر امتداد VRZNO php. هذا مخصص للمتصفح الذي يسمح لـ PHP بالوصول إلى Javascript عبر C API. يأتي مثبتًا مسبقًا مع 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
يوصى باستخدام Firefox لتجربة مستخدم أفضل.
أسرع طريقة لإنشاء PIB هي استخدام Make & Docker. ما عليك سوى إصدار أمر make
بعد التحقق من الريبو، وسيتم إنشاؤه.
make
خطوات:
bash configure.sh
bash build-objects.sh
bash build.sh
لإنشاء ثنائي الويب