PyHP
PyHP 3.1
PYHP هي حزمة تتيح لك تضمين رمز Python مثل رمز PHP في HTML والملفات النصية الأخرى. يتم استدعاء البرنامج النصي إما عن طريق تكوين خادم الويب أو shebang ويتواصل مع خادم الويب عبر WSGI.
<?pyhp و ?>exit و sys.exit إنهاء البرنامج النصي ، وليس الخادم بأكملهatexit المسجلة حتى إيقاف تشغيل الخادم في وضع WSGIregister_shutdown_functionpyhp-clipyhp-cgipyhp.wsgi.appspyhp.wsgi.util submodule$_SERVER SERVER$_REQUEST REQUEST$_GET كما GET$_POST كما POST$_COOKIE كملف COOKIE$_FILES FILEShttp_response_codeheaderheaders_listheader_removeheaders_sentheader_register_callback مع وسيطة إضافية replace الكلمة الرئيسية لتسجيل عمليات الاسترجاعات المتعددةsetcookie مع وسيطة الكلمات الرئيسية samesite إضافيةsetrawcookie أيضا مع وسيطة الكلمة الرئيسية samesiteregister_shutdown_function مع أمر تنفيذ رد الاتصال المعاكس (LIFO)opcache_compile_file الذي يثير استثناءات بدلاً من العودة False عند فشل التجميعopcache_invalidateopcache_is_script_cachedopcache_reset-c أو --config cliPYHPCONFIG~/.config/pyhp.toml/etc/pyhp.tomlRuntimeError إذا لم يتم العثور عليهpyhp.backendspyhp-backend أو python3 -m pyhp.backends CLI يوضح لك هذا القسم كيفية تثبيت PYHP على جهاز الكمبيوتر الخاص بك. إذا كنت ترغب في استخدام البرامج النصية PYHP على موقع الويب الخاص بك بواسطة CGI ، فعليك تمكين CGI بالإضافة إلى ذلك في خادم الويب الخاص بك.
python3 setup.py bdist_wheelPYHPCONFIG Environ أو نسخ pyhp.toml على أحد مواقع ملفات التكوين لاستخدام أوامر CLIdebian/build_deb.sh في الدليل الجذر للمشروع.sudo dpkg -i python3-pyhp-core_{version}-1_all.debpython3-toml و python3-werkzeug لاستخدام أوامر CLIpyhp-backend clear عند إلغاء التثبيت أو الترقية إذا كانت الواجهة الخلفية عبارة عن ذاكرة التخزين المؤقت ، تذكر ذلك عند استخدام مسارات ~PYHPCONFIG Environ أو نسخ pyhp.toml على أحد مواقع ملفات التكوينpyhp-* import sys
import re
import tempfile
from wsgiref . simple_server import make_server
from pyhp . compiler import parsers , util , generic
from pyhp . backends . files import Directory
from pyhp . wsgi . apps import ConcurrentWSGIApp
from pyhp . wsgi . proxys import LocalStackProxy
from pyhp . wsgi . interfaces . php import PHPWSGIInterfaceFactory
from pyhp . wsgi . interfaces . phputils import UploadStreamFactory
compiler = util . Compiler (
parsers . RegexParser (
re . compile ( r"<?pyhps" ),
re . compile ( r"s?>" )
),
util . Dedenter (
generic . GenericCodeBuilder ( - 1 )
)
)
interface_factory = PHPWSGIInterfaceFactory (
200 ,
[( "Content-type" , "text/html; charset= " UTF-8 " " )],
None ,
( "GET" , "POST" , "COOKIE" ),
8000000 ,
UploadStreamFactory (
tempfile . gettempdir (),
20
)
)
sys . stdout = proxy = LocalStackProxy ( sys . stdout )
with Directory ( "." , compiler ) as backend :
with ConcurrentWSGIApp ( "tests/embedding/syntax.pyhp" , backend , proxy , interface_factory ) as app :
with make_server ( "" , 8000 , app ) as httpd :
httpd . serve_forever () from wsgiref . simple_server import make_server
import toml
from pyhp . wsgi . util import ConcurrentWSGIAppFactory
config = toml . load ( "pyhp.toml" )
with ConcurrentWSGIAppFactory . from_config ( config ) as factory :
with factory . app ( "tests/embedding/syntax.pyhp" ) as app :
with make_server ( "" , 8000 , app ) as httpd :
httpd . serve_forever ()