We have a library with a few functions written in go (cgo) which we are intending to call from programs written in several different languages. The library is compiled using the "-buildmode=c-shared" flag to create a shared object binary (.so file).
We have already integrated the library with languages like Python, Node.js, etc. Now, we would like to do so with PHP. However due to the lack of a standard library, it is not as straightforward as it is in other languages. Thus, we would like someone to help us with this.
The job involves the following:
1. We will provide you with the go library.
2. You will write a zend php extension that will wrap the go library. The extension should work with PHP 5.5+ and PHP 7.
3. You will provide us with the extension as well as all the necessary resources/steps required to integrate it with a PHP script (build script, header files, etc.) so that we can easily add more functions later in the future if needed.
1. Source code for the Zend PHP C extension along with Makefile, C code and headers etc.
2. Need help in deciding if the go library should be dynamically complied or statically into the C extension
3. Example PHP code of the functions being called (both in PHP5 and PHP7)
Anyone with experience in writing PHP extensions that call go/cgo functions is welcome to apply.