php

package module
v0.0.0-...-1aaf01c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 21, 2017 License: MIT Imports: 5 Imported by: 0

README

GoEmPHP

This package is built for Embedding PHP into Golang.

It is easy to use:

    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

Open Source

See LICENSE for more information.

Documentation

Index

Constants

View Source
const (
	Success = 0
	Failure = -1
)

Variables

View Source
var (
	ErrInvalidType  = errors.New("Invalide type")
	ErrInvalidValue = errors.New("Invalide value")
)

Functions

This section is empty.

Types

type PHP

type PHP struct {
	// contains filtered or unexported fields
}

func New

func New() (php *PHP)

func (*PHP) Array

func (php *PHP) Array(name string, value map[string]string)

func (*PHP) Close

func (php *PHP) Close()

func (*PHP) Eval

func (php *PHP) Eval(script string) (err error)

func (*PHP) Exec

func (php *PHP) Exec(filepath string) (err error)

func (*PHP) IniFile

func (php *PHP) IniFile(ini string)

func (*PHP) Startup

func (php *PHP) Startup()

func (*PHP) Stderr

func (php *PHP) Stderr(f *os.File)

func (*PHP) Stdout

func (php *PHP) Stdout(f *os.File)

func (*PHP) Unset

func (php *PHP) Unset(name string)

func (*PHP) Var

func (php *PHP) Var(name string, value interface{}) (err error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL