命名空间

最后更新于:2022-04-02 02:33:44

[TOC] ## 示例 ### 添加命名空间 方式一: ``` #include Php::Value myFunction() { return 1; } extern "C" { PHPCPP_EXPORT void *get_module() { static Php::Extension extension("my_extension", "1.0"); extension.add("myNamespace\\myFunction", myFunction); return extension; } } ``` ``` echo myNamespace\\myFunction(); //1 ``` 方式二:使用Php::Namespace
main.cpp ``` #include Php::Value myFunction1() { return 1; } Php::Value myFunction2() { return 2; } Php::Value myFunction3() { return 3; } extern "C" { PHPCPP_EXPORT void *get_module() { static Php::Extension extension("my_extension", "1.0"); // 创建命名空间 Php::Namespace myNamespace("myNamespace"); // 把函数添加到命名空间 myNamespace.add("myFunction1", myFunction1); // 嵌套的命名空间 Php::Namespace nestedNamespace("nestedNamespace"); nestedNamespace.add("myFunction2", myFunction2); nestedNamespace.add("myFunction3", myFunction3); // ... //将嵌套名称空间添加到第一个名称空间 myNamespace.add(std::move(nestedNamespace)); // 加命名空间添加到扩展中 extension.add(std::move(myNamespace)); return extension; } } ```

main.php ```
';