PyHP
PyHP 3.1
O PYHP é um pacote que permite incorporar o código Python, como o código PHP no HTML e outros arquivos de texto. Um script é chamado pela configuração do servidor da web ou por um shebang e se comunica com o servidor da Web via WSGI.
<?pyhp e ?>exit e sys.exit encerrar o script, não todo o servidoratexit não são chamadas até o desligamento do servidor no modo WSGIregister_shutdown_functionpyhp-clipyhp-cgipyhp.wsgi.appspyhp.wsgi.util$_SERVER como SERVER$_REQUEST como REQUEST$_GET AS GET$_POST como POST$_COOKIE como COOKIE$_FILES como FILEShttp_response_codeheaderheaders_listheader_removeheaders_sentheader_register_callback com um argumento de palavra -chave replace adicional para registrar vários retornos de chamadasetcookie com um argumento de palavra -chave samesite adicionalsetrawcookie também com um argumento adicional de palavras -chave samesiteregister_shutdown_function com ordem de execução de retorno de chamada reversa (LIFO)opcache_compile_file que levanta exceções em vez de retornar False quando a compilação falhaopcache_invalidateopcache_is_script_cachedopcache_reset-c ou --config cliPYHPCONFIG~/.config/pyhp.toml/etc/pyhp.tomlRuntimeError se não for encontradopyhp.backendspyhp-backend ou python3 -m pyhp.backends CLI Comandos Esta seção mostra como instalar o PYHP no seu computador. Se você deseja usar scripts PYHP em seu site pelo CGI, também deve ativar o CGI no seu servidor da web.
python3 setup.py bdist_wheelPYHPCONFIG ambient ou copie pyhp.toml como um dos locais de arquivo de configuração para usar os comandos da CLIdebian/build_deb.sh no diretório raiz do projeto.sudo dpkg -i python3-pyhp-core_{version}-1_all.debpython3-toml e python3-werkzeug estão instalados para usar os comandos da CLIpyhp-backend clear será executado em desinstalação ou atualização se o back-end for um cache, lembre-se disso ao usar caminhos contendo ~ para o cache do arquivoPYHPCONFIG ou copie Pyhp.toml como um dos locais de arquivo de configuraçãopyhp-* 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 ()