Skip to main content

A spinoff of PHP in Python

Project description

Python PPHP: Hypertext Preprocessor.

PPHP

This is a spinoff of PHP (PHP: Hypertext Preprocessor) that uses Python instead of the PHP language.

How to use it:

To host the server, simply run python -m PPHPServer

To execute Python code inside a file, use:

<?pphp #code here (line breaks permitted) ?>

and output will be recorded in the same way as PHP - through stdout.

Example:

<p>Request method: <?pphp echo(_SERVER['REQUEST_METHOD']) ?></p>

Some special globals:

  • echo(text) - this is equivalent to sys.stdout.write(text)

  • escape(text) - this is equivalent to PHP’s htmlspecialchars - escapes special HTML characters.

  • __script__ - this is the entire script currently being executed

  • __db__ - this is the server’s database, more documentation below

  • _GET - this is the GET data as a dictionary

  • _POST - this is the POST data as a dictionary

  • _REQUEST - this is a combination of _GET and _POST

  • _SERVER - this is the equivalent of PHP’s $_SERVER, with some exceptions described below.

In _SERVER, the keys REQUEST_TIME, HTTP_ACCEPT, HTTP_ACCEPT_CHARSET, HTTP_HOST, HTTP_REFERER, HTTPS, REMOTE_HOST, SERVER_ADMIN, SERVER_SIGNATURE, SCRIPT_NAME, and SCRIPT_URI are all not available; and the key GATEWAY_INTERFACE returns the version of the cgi module, not the gateway interface.

Data for a server can be stored using the global __db__. This is simply a dictionary - you can store and retrieve values as such. Data in __db__ is stored as JSON in the file __DATABASE__.json, under ~/.pphp on Mac or Linux or %appdata%/.pphp on Windows. Changes to __db__ will only show up in __DATABASE__.json after all scripts have finished running. WARNING: Moving the file will reset that script’s data!

Thanks to:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pphp-3.3.1.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

pphp-3.3.1-py2.py3-none-any.whl (8.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file pphp-3.3.1.tar.gz.

File metadata

  • Download URL: pphp-3.3.1.tar.gz
  • Upload date:
  • Size: 6.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pphp-3.3.1.tar.gz
Algorithm Hash digest
SHA256 7b4f2101938b34deebfc3d808900b77564ddcee8ab3a929ab01b492ac49ff414
MD5 e005db62b0ea1123575108d79e407546
BLAKE2b-256 060413f5037af897eb861970128a9d8d4378464af72ea4de549e0b4d556fcdf7

See more details on using hashes here.

File details

Details for the file pphp-3.3.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for pphp-3.3.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 5d3d5b8d05b4d1a149eb0bcef60853b26db8d6ee887e6d1fdbf9264ff30e8807
MD5 9dac80a3dad1fbb342a34fff147d0213
BLAKE2b-256 d1189b49dc9413d4872d98bfeef82becd7da289a5a83fc3a47ecebaa30401bdc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page