Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mikespook/goemphp
This package is built for Embedding PHP into Golang.
https://github.com/mikespook/goemphp
Last synced: 6 days ago
JSON representation
This package is built for Embedding PHP into Golang.
- Host: GitHub
- URL: https://github.com/mikespook/goemphp
- Owner: mikespook
- License: mit
- Created: 2012-11-20T02:24:25.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2017-08-21T21:25:26.000Z (about 7 years ago)
- Last Synced: 2024-06-20T14:29:34.258Z (5 months ago)
- Language: Go
- Size: 6.73 MB
- Stars: 220
- Watchers: 30
- Forks: 42
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# GoEmPHP
This package is built for Embedding PHP into Golang.
It is easy to use:
```go
script = php.New()
script.Startup()
defer script.Close()
if err := script.Eval("phpinfo();"); err != nil {
log.Fatal(err)
}
if err := script.Exec("foobar.php"); err != nil {
log.Fatal(err)
}
```
For more examples, please read the souce code: `php_test.go`.# INSTALL
The first step is downloading the package. Please note that you must specify
the param `-d`.> $ go get -d github.com/mikespook/goemphp
Then, following step is running `bootstrap.sh` to prepar the embeded PHP
library. It has one paramater with 4 values: [5.4 | 5.5 | 5.6 | ng]Eg.,
> `./bootstrap.sh 5.6`
will `wget`, `configure` and `make` the libphp5.so file which can be used for embedding PHP.
It will be a long time waiting. When you see `Congratulations!!!`, it means you have already got the proper .so file placed in `./php-lib/libs/`. You could check it manually.
The third step is calling `go generate` to prepare source files which will be built.
If generate process do not report any issue, then you could call `go build` to build GoEmPHP.
After that, please use `./test.sh` for testing the package. And of course, you could run `go test -ldflags="-r ./php-lib/libs/"` manually, or put the .so into one of system library directories and run `go test`. The same library mechanism should be used when you use this library in your application.
# Contacts
* Xing Xing
* [Blog](http://mikespook.com)
* [@Twitter](http://twitter.com/mikespook)
# Open Source
See LICENSE for more information.