PHP-X 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
PHP-X 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
PHP-X 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
PHP-X 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
PHP-X 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 LGPL
开发语言 C/C++
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 matyhtf
适用人群 未知
收录时间 2017-06-13

软件简介

PHP ZendAPI 的 C++ 封装库,可以用于快速开发 PHP 扩展。PHP-X 使用了完全面向对象的设计,使得 PHP 扩展开发、C++ 嵌入 PHP 变得非常简单,实现了 C++ 和 PHP 的互通。

环境依赖:

  • PHP-7.0或更高版本

  • g++-4.8或更高版本或clang++,必须支持C++11标准

  • 仅支持 Linux/MacOS/Windows 3种平台

  • 仅支持 x86-64 架构

  • cmake-3.5或更高版本

代码实例:

Array arr;
arr.append(1234);
arr.append(1234.56);
arr.append(false);
arr.append("hello world");

Variant a = 1234;
Variant b = 34563.3;
Variant c = "hello world";

php::exec("var_dump", a, b, c);
Variant d = php::exec("json_encode", arr);
cout << d.toString() << endl;
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (16)

加载中
cms软件竞争激烈 欢迎了解下Poscms
2018/04/26 15:41
回复
举报
该评论暂时无法显示,详情咨询 QQ 群:912889742
很早就有了吧,还有一个phpcpp
2017/06/19 11:11
回复
举报
各有各的好处。composer优点在于使用和修改方便,环境要求较低。扩展优点在于运行效率高得多,可以实现更强大的功能
2017/06/15 00:50
回复
举报
该评论暂时无法显示,详情咨询 QQ 群:912889742
打分: 推荐
可以试试看尝试下,能弄出来就挺好的,之前试过国外有一个cpp-php,但感觉还是用起不方便。。。
2017/06/14 11:01
回复
举报
打分: 力荐
这哥又开了个好头。
2017/06/14 10:36
回复
举报
打分: 力荐
很好,韩老师继swoole以后又一力作!顺便。。一楼too young,明明还是用cpp写好吗。。只是更方便了
2017/06/14 10:33
回复
举报
zephir也不是PHP开发扩展,zephir只不过编译到C代码,方便开发扩展而已
2017/06/14 10:24
回复
举报
我是来看精彩的评论的。
2017/06/14 09:55
回复
举报
更多评论
暂无内容
发表了博客
2016/04/06 18:30

PHP的array_x的用法

array_map function myfunction($v) { return($v*$v); } $a=array(1,2,3,4,5); print_r(array_map("myfunction",$a)); 很像ES6 的map方法 ,估计是就是跟js学的 array_merge //保存用户数据 重定向 User::create(array_merge($request->all(),['avatar'=>'/images/default-avatar.png']));...

0
1
发表了博客
2020/05/19 10:29

PHP 通过 X-sendfile 下载

PHP代码 自动判断Apache和nginx <?php //phpinfo();die; // $filename = '11.png'; // $filename = '11.png'; $filename = 'Adobe Photoshop CC 2018.zip'; $filePath = $filename; header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); $ua = $_SERVER["HTTP_USER_AGENT"]; if (preg_match('/MSIE/', $ua)) { header('Content...

0
0
发表了博客
2013/06/18 10:17

PHP X-sendfile实现文件下载

项目中涉及到文件的下载功能,通常PHP文件下载都是将文件先读取出来然后发送相应头文件进行下载。 如: $file_dir = $instance->_attach_path.Helper_Hash::hashDIR($id).$attach['path']; if(!file_exists($file_dir)){   throw new FromMeException('文件不存在'); } else{   // 打开文件   $file = fopen($file_dir,"r");   // 输入文件标签   Header("Content-type: application/octet-stream");   Header("Accept-Ranges: bytes...

1
5
发表了博客
2019/11/06 16:26

如何基于 PHP-X 快速开发一个 PHP 扩展

0x01 起步 PHP-X本身基于C++11开发,使用cmake进行编译配置。首先,你需要确定所有依赖项已安装好。包括: gcc-4.8 或更高版本 PHP7.0 或更高版本,需要php7-dev 开发包 cmake-2.8 或更高版本 然后安装PHP-X。 git clone https://github.com/swoole/PHP-X.git cd PHP-X cmake . make -j 4 sudo make install 未出现任何编译错误,会成功编译出libphpx.so,并安装到系统的lib目录。头文件会复制到系统的include目录。这时需要执行...

0
0
2018/11/23 17:33

PHP 获取X个工作日后的日期

通过 获取指定日期的节假日信息 提供的接口(该接口每年更新节假日信息) 设置指定日期,获取X个工作日后的日期。(跳过周末及节假日) /** * 获取X个工作日后的日期 */ public function get_date($data,$days){ $num=$days; $a=0; for($i=1;$i<=$num+365;$i++){ @$b=strtotime($data)+86400*$i; @$date=date("Ymd",$b); $url="http:/...

0
0
发表了博客
2015/12/13 13:25

Mac OS X brew安装php7

Mac OS X brew 安装 php7 因为php7的二进制包放在 cloudfront.net 上,这个网站被我大功夫网墙了,直接 brew install 安装不了,所以爬墙可以手动下载 1.下载 wget https://homebrew.bintray.com/bottles-php/php70-7.0.0.el_capitan.bottle.8.tar.gz 2.拷贝到 brew 缓存目录 cp php70-7.0.0.el_capitan.bottle.8.tar.gz /Library/Caches/Homebrew/ 3.brew install php70 4.修改apache配置文件:sudo vim /etc/apache2/http.co...

1
2
2016/11/22 17:49

PHP判断ajax请求:HTTP_X_REQUESTED_WITH

有时我们需要判断是不是ajax请求来决定模块输出还是json格式输出. PHP判断ajax请求的原理: 在发送ajax请求的时候,我们可以通过XMLHttpRequest这个对象,创建自定义的header头信息, 在jquery框架中,对于通过它的$.ajax, $.get, or $.post方法请求网页内容时,它会向服务器传递一个HTTP_X_REQUESTED_WITH的参数,php中就是在header一层判断是否是ajax请求,对应的根据$_SERVER['HTTP_X_REQUESTED_WITH']判断。 /**   * 当前请...

0
0
发表了博客
2016/08/23 09:41

在Mac OS X El Capitan上安装PHP

homebrew版: http://justinhileman.info/article/reinstalling-php-on-mac-os-x/ (信息量很大) 内置版: http://jason.pureconcepts.net/2015/10/install-apache-php-mysql-mac-os-x-el-capitan/

0
0
发表于开发技能专区
2016/04/12 18:11

屏蔽Nginx 版本号和PHP的X-Powered-By

出于安全的考虑这个中操作还是有必要的。 屏蔽 Nginx 版本号: 在nginx.conf 文件里的http括号里添加一句 server_tokens off; 屏蔽PHP版本号: 1, 如果是php-fpm 可以在nginx 的location配置里添加一句 fastcgi_hide_header X-Powered-By ; 不过这句好像在Tengine 里不起作用。 2, 在php.ini 配置添加 expose_php = Off 3, 如果php-fpm的,在php-fpm.conf里添加一句 : php_flag[expose_php] = off 上述的三种方法基本可以解...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
16 评论
84 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部