c++;php与静态库
我创建了一个库.a,其中包含一个.cpp和.h文件,其中包含许多类、嵌套类和方法。我想在php示例中包含这个静态库,并尝试使用它。我想说的是,我是php新手。我已经在test.cpp文件中测试了我的libray.a,它可以正常工作。如何创建test.php并测试我的library.a;It’有可能,请给我举几个例子 我想说的是,我在ubuntu工作。g++是我的编译器 谢谢你的建议!谢谢 编辑:c++;php与静态库,php,c++,static-libraries,Php,C++,Static Libraries,我创建了一个库.a,其中包含一个.cpp和.h文件,其中包含许多类、嵌套类和方法。我想在php示例中包含这个静态库,并尝试使用它。我想说的是,我是php新手。我已经在test.cpp文件中测试了我的libray.a,它可以正常工作。如何创建test.php并测试我的library.a;It’有可能,请给我举几个例子 我想说的是,我在ubuntu工作。g++是我的编译器 谢谢你的建议!谢谢 编辑: 我想说的是,我不想公开我的.CPP代码。我只想使用我的.H和.A文件。一个文件。文件不是一个自执行库
我想说的是,我不想公开我的.CPP代码。我只想使用我的.H和.A文件。一个
文件。
文件不是一个自执行库。它是静态目标代码。它不能自己运行
PHP没有加载程序。它不能加载。一个文件,你自己的操作系统也不能
.a
文件需要附带适当的标题(.h
文件)
如果要在PHP中使用本机代码,必须使用PHP的接口。看,就像用C/C++构建的任何东西一样,PHP对字符串(或大多数数据类型)有自己的定义
简而言之,您有两种选择:
- 使用PHP的头并直接与PHP连接代码
- 使用库包装器将调用连接到PHP
- 将您的库设置为可执行文件,并使用PHP调用它*
*PHP有很多IPC方法,所以这实际上是非常可行的。可能。我不想使用.cpp和.h文件。我想用我的图书馆。我不知道;我想公开我的.CPP代码,你可以复制另一个C++包装器中的库…但是为什么,你没有访问来源的权限?你必须以这样或那样的方式编写一些桥接代码,你不能只是在PHP中添加一个随机库,然后神奇地期望PHP为它提供一个接口。是的,我确实可以访问源文件:.cpp和.h文件。如何创建桥接代码?如果我想使用第一个选项,你能解释一下如何使用php头吗?我可以在.php中包含我的.h和.a吗?很抱歉我的愚蠢问题:)。你能延长你的回答吗?我是php新手。如果我创建了一个动态库,我就赢了;不需要.h文件吗?不需要。PHP被解释。C是土生土长的。如果你想这样做,请参阅@therefromhere的评论。