PHP-CPP

A C++ library for developing PHP extensions.

What is PHP-CPP?

A C++ library for developing PHP extensions. It offers a collection of well documented and easy-to-use classes that can be used and extended to build native extensions for PHP.

Learn more

Why PHP-CPP?

This C++ library makes building PHP extensions fun. Extensions built on top of PHP-CPP are easy to understand and simple to maintain, and your code looks great - and it gives a huge boost to your application!

Learn more

See it in action

Do you want to see how fast a C++ extension is in real life? Check out this real life example script, and compare it with the same algorithm in C++.

Learn more

The basics

Unlike regular PHP extensions - which are really hard to implement and require a deep knowledge of the Zend engine and pointer manipulation - extensions built with PHP-CPP are not difficult to develop at all.

Functions

The PHP-CPP library uses all the power offered by C++11 to convert the parameters and return values from your functions to/and from PHP.

Php::Value hello_world()
{
    return "hello world!";
}

The function above is a native C++ function. With PHP-CPP you can export this function to PHP with only one single C++ method call.

extension.add("hello_world", hello_world);

Parameters and return values

Working with parameters and return values is
just as easy.

Php::Value my_plus(Php::Parameters &parameters)
{
    return (int)parameters[0] + (int)parameters[1];
}

The PHP-CPP library ensures that the variables from PHP (which internally are complicated C structures), are automatically converted into integers, passed to your function, and that the return value of your "my_plus" function is also converted back into a PHP variable.

Contribute

This library is currently a work in progress, and it is an open source project. We are looking for people who'd like to contribute to it. Feel free to contribute!

Contribute now
Morty Proxy This is a proxified and sanitized view of the page, visit original site.