Skip to main content

PyPi Status PyPi Python Version PyPi Downloads GitHub Issues GitHub Commit Activity PyPi License PyPi Version

wraphper

Python wrappers for PHP functions, when you just can't shake it.

Why?

If you're coming from PHP, you'll take a bit of time getting used to the new names or methods in Python. You could look up something like "python str_replace" everytime you want to do so, or you could just save time and use php.str_replace('Hello', 'Goodbye', 'Hello, world!').

Why not?

Installation

Pip it.

$ pip install wraphper

Usage

Import the module and then fulfil your PHP fantasies in Python:

import wraphper as php

a = [1, 2, 3]
php.count(a)
# outputs: 3

Supported functions

This module is a work in progress. Not all functions are supported yet. The current list includes:

PRs with more functions are welcome!

Performance and Security

wraphper doesn't internally call PHP to run these functions, it simply provides you a PHP-like function name that runs the Python equivalent. As such, performance is unaffected because only Python is running.

Similarly, there are no implications of this on security.

Contributing

Follow these rules with contributed functions:

  • The function must be an native PHP function, not from a third-party library.
  • The name of the function must match the original exactly. Otherwise, the purpose of this module is defeated.
  • The function should take the exact same number of arguments as the original.
  • The argument types must match the PHP types as closely as possible, so string is str, int is int, array is list or dict, etc.
  • The function must throw an appropriate exception with the exact same error message from the PHP function.
  • The function should avoid any pre- or post-processing of the argument or return value. The goal is not to match PHP functions' inputs and outputs, but to provide a PHP-familiar syntax for Python developers.

Testing

Tests can be run by the following command:

$ python tests.py

Compatibility

wraphper has been checked with Python 2.7 and 3.6, but there's no reason why it shouldn't work with older versions.

Changelog

0.0.2 - 2019-01-29

  • Added str_replace

0.0.1.post2 - 2019-01-28

  • BREAKING Removed class to make it easier to import and use
  • Added tuple support
  • Added more tests
  • Added changelog

0.0.1.post1 - 2019-01-26

  • Added tests

0.0.1 - 2019-01-26

  • Initial release with count function

Release files for wraphper 0.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wraphper 0.0.2
File Size Uploaded
wraphper-0.0.2.tar.gz 3.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for wraphper 0.0.2
File Interpreter ABI Platform
wraphper-0.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 7.6 kB

Release files / wraphper-0.0.2.tar.gz

Download URL wraphper-0.0.2.tar.gz
Size 3.4 kB
Tags Source
SHA-256 checksum
How to use checksums
25eb399f170241ba44546babd5f4d0a7d75a31c39f8d6f3d3f1abaed38c5f88c
BLAKE2b-256 checksum
How to use checksums
c418e9d3125b98e34c975f034891d81d9805ab9fc4634f199ef8bad52ce77e6f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.6.7

Release files / wraphper-0.0.2-py3-none-any.whl

Download URL wraphper-0.0.2-py3-none-any.whl
Size 4.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
746cb6f4432f5b0485ae731f47e68916a13b1c5c13420bb215f933dc72288ba9
BLAKE2b-256 checksum
How to use checksums
0e27f39b5504cbe9c8072ec1620b26952b5a7c1da291310c1f654615b48eecca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.6.7

Release history Release notifications | RSS feed

This release

0.0.2 This release

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page