PHP-CPP開発拡張(四)
2206 ワード
PHP-CPPはPHP拡張を開発するためのC++ライブラリである.このセクションでは、C++でPHP関数を呼び出す方法について説明します.
PHP関数を呼び出す
一般関数の呼び出し
呼び出しクラス内のメソッド:
以下に、統合例を用いて説明する.
私たちはtestを使います.phpテスト:
出力:
(未完待機)
最新のダイナミックを最初に取得したい場合は、
PHP関数を呼び出す
一般関数の呼び出し
// call a function from user space
Php::Value data = Php::call("some_function", "some_parameter");
呼び出しクラス内のメソッド:
// create an object (this will also call __construct())
Php::Object time("DateTime", "now");
// call a method on the datetime object
Php::out << time.call("format", "Y-m-d H:i:s") << std::endl;
以下に、統合例を用いて説明する.
/**
* User: : (fhyblog)
* Date: 2018/7
*/
#include
void test_call(Php::Parameters ¶ms){
Php::Value v;
//
v = Php::call("md5", "test");
Php::out << v << std::endl;
// PHP
Php::Object time("Datetime", "now");
v = time.call("format", "Y-m-d H:i:s");
Php::out << v << std::endl;
// PHP ,
Php::Value datetime = params[0];
v = datetime.call("format", "Y-m-d");
Php::out << v << std::endl;
//
Php::Value callback = params[1];
callback("param1", "param2");
//
Php::Array format_alias({datetime, "format"});
Php::out << format_alias("Y-m-d H") << std::endl;
//
Php::Value time_alias("time");
Php::out << time_alias() << std::endl;
}
extern "C" {
PHPCPP_EXPORT void *get_module() {
static Php::Extension extension("helloworld", "1.0.0");
extension.add("test_call");
return extension;
}
}
私たちはtestを使います.phpテスト:
出力:
098f6bcd4621d373cade4e832627b4f6
2018-07-15 09:43:23
2018-07-15
string(6) "param1"
string(6) "param2"
2018-07-15 09
1531619003
(未完待機)
最新のダイナミックを最初に取得したい場合は、
(fhyblog)
に注目してください.不定期に技術的な乾物をお届けします.