盘点一下这些年PHP在桌面应用方面的解决方案
ccwgpt 2025-07-08 17:03 1 浏览 0 评论
今天作者给大家盘点一下近些年PHP在实现桌面客户端方面的项目。
PHP-GTK
PHP-GTK是2001年3月创立,是PHP的一个扩展,实现了与GTK+的绑定,提供面向对象的接口,极大地简化了客户端跨平台 GUI 应用程序的编写。
它是PHP语言和GTK库的一个纽带,GTK是一个桌面环境的GUI库,可以实现窗口、按钮、输入框等组件,通过本扩展可以使用PHP语言写带有 GUI(图形用户界面)的客户端应用程序。当初创建这个项目的意义,有一部分是为了证明PHP是一个强大的编程语言。PHP的大佬确实潇洒。
PHP-QT
PHP-Qt 是 PHP5 的扩展,旨在使用 Qt 工具包编写软件。 它为 Qt4 框架提供了面向对象的接口,并允许使用 PHP 语言编写 Qt 应用程序。 他的代码和效果如下:
WinBinder
WinBinder 是 PHP 的一个开源扩展,它让 PHP 程序员能轻松构建原生 Windows 应用程序,以最小的努力快速获得有价值的成果。借助 PHP 的强大和灵活性,即使是只有几十行代码的简短脚本也能生成有用的程序。
项目仅支持5.x系列,目前也有分支支持7.x和8.x系列。
这是一个扩展,安装之后,就实现GUI界面,也可以调用windows的众多能力,比如播放音乐等。
项目提供了大量的案例代码:
PHPSciter
PHPSciter是一个PHP的扩展,将Sciter集成到PHP中,这样就可以使用PHP来开发桌面应用。对于广大的PHPer来说,之前B/S架构下面的开发经验基本上可以移植到Sciter下面来。这样可以充分的享受PHP已有的各种类库,快速的开发桌面应用工具。
该项目是青岛龙之言软件有限责任公司出品,由国内著名的Swoole团队和禅道团队合资成立。
安装后运行如下代码,同时会加载其他案例源码:
<?php
$oSciter = new PHPSciter();
$oSciter->setResourcePath('file://' . __DIR__ . '/res/');
$oSciter->setWindowFrame(100, 100, 100 + 500 + 1, 100 + 500 + 1);
$oSciter->setWindowTitle('hello');
$oSciter->loadFile('index.php');
$oSciter->setOption(PHPSciter::SCITER_SET_SCRIPT_RUNTIME_FEATURES,PHPSciter::ALLOW_FILE_IO | PHPSciter::ALLOW_SOCKET_IO | PHPSciter::ALLOW_EVAL |PHPSciter::ALLOW_SYSINFO);
$oSciter->run(PHPSciter::SW_TITLEBAR | PHPSciter::SW_RESIZEABLE | PHPSciter::SW_MAIN | PHPSciter::SW_ENABLE_DEBUG|PHPSciter::SW_CONTROLS);
?>
能够得到这样的界面:
运行机制
1. 启动Sciter窗口,加载index.php
2. index.php里面通过html的方式定义了若干的元素,并绑定了其click事件的响应函数。
3. 当事件触发后,sciter引擎会将click事件的调用传给php的解释引擎。
4. 在callback里面通过PHPSciter::defineFunction()方法定义了响应函数。
5. PHP引擎调用该函数,并将结果返回。
6. 前端的JS更新页面元素。
PHP-GUI
这个项目是 PHP-GUI,一个允许使用 PHP 创建图形用户界面的库。它的主要特点包括:
1. 使用 PHP 编写桌面应用程序
2. 跨平台支持(Windows、Linux、Mac)
3. 基于 Lazarus 和 Free Pascal 构建
4. 使用 PHP 的事件驱动编程模型
5. 支持各种 UI 组件如按钮、标签、输入框等
这个库让 PHP 开发者能够创建本地桌面应用,而不需要学习其他语言。它通过 PHP 进程与一个用 Pascal 编写的后台程序通信来实现界面渲染。
PHP Desktop
PHP Desktop 是一个开源项目,允许使用 PHP、HTML5、JavaScript 和 SQLite 等 Web 技术开发原生桌面 GUI 应用程序。它类似于 PHP 的 Electron,可以将 PHP Web 应用和 CLI 工具轻松转换为桌面应用。它嵌入了 Web 浏览器、Web 服务器和 PHP 解释器,并支持常见的 PHP 框架。你可以使用 Inno Setup 创建独立的可执行文件进行分发,并使用 PHP 编码器保护 PHP 源代码。PHP Desktop 具有稳定性好、无内存泄漏等优点,并且可以免费用于商业用途。
这是一个非常火爆的项目,目前有2.8K的star,他只是让你的php代码在一个本地桌面环境中运行。无需额外的门槛。
下面这个产品cryptoGlance 就是使用该项目打造的,这个工具是一个独立的或基于PHP的挖矿监控和管理平台,具有响应式界面和实时数据更新。它提供以下主要功能:
1.矿机/ASIC管理:监控和管理多个矿机,远程切换矿池、重启矿机,调整矿池优先级,重置矿机统计信息,以及在BITMAIN ASIC故障时自动重启。
2.矿池监控:实时跟踪矿池状态(支持MPOS和部分其他矿池)。
3.钱包/余额:管理多个钱包地址,汇总余额,并支持多种加密货币和法币转换。
NativePHP
NativePHP是一个新兴框架,旨在帮助PHP开发者快速构建功能丰富的原生桌面应用。它利用开发者已掌握的PHP、HTML、CSS和JavaScript技术,降低了学习门槛。NativePHP简化了跨平台应用分发流程,让PHP开发者能更便捷地创建真正的原生应用。
NativePHP本质上是以下几个要素的结合:一组方便的类,用于与宿主操作系统的各种功能进行交互;一套用于构建和打包原生应用程序的工具;以及一个静态PHP运行时,让你的应用可以在任何用户的设备上运行,无需用户进行任何配置。
NativePHP并非一个需要学习的全新框架,而是构建在Laravel生态系统之上。使用NativePHP前,需要熟悉使用Laravel构建Web应用。它也不是一个GUI框架,不限制你构建应用的方式,可以选择任何UI工具集,例如React、Vue、Livewire、Inertia,甚至纯HTML和CSS。NativePHP使用的就是标准的PHP,而不是新的PHP分支,也无需安装额外的PHP扩展,只需通过Composer安装即可使用。
小结
除了以上提到项目,PHP还有很多解决方案,大多数的方案并没有流行开,但是PHP Desktop 和NativePHP非常的强大。后面作者会做一个针对PHP的GUI解决方案的专题,详细测评每一个方案。欢迎大家关注作者。
实际上,NativePHP目前已经有了移动端解决方案,NativePHP for Mobile 。
NativePHP for Mobile是一个首创的库,它允许PHP开发者在各种移动设备上原生运行PHP应用程序,而无需Web服务器。它将静态编译的PHP作为可嵌入的C库,结合Laravel的灵活性和各平台丰富的原生API,从而可以使用Laravel的强大功能和便利性,构建高性能的PHP原生移动应用程序。构建美观的、本地优先的iOS和Android应用从未如此简单。后面作者会专门做一个详细介绍,欢迎大家关注。
原文标题: 盘点一下这些年PHP在桌面应用方面的解决方案
原文地址:
https://phpreturn.com/index/a68188c9ba1394.html原文平台: PHP武器库
版权声明: 本文由phpreturn.com(PHP武器库官网)原创和首发,所有权利归phpreturn(PHP武器库)所有,本站允许任何形式的转载/引用文章,但必须同时注明出处。
相关推荐
- Android开发基础入门(一):UI与基础控件
-
Android基础入门前言:从今天开始,我们开始分享Android客户端开发的基础知识。一、工具指南工欲善其事必先利其器,我们首先介绍一下开发Android常用的集成开发环境。小雨在上大学期间,开发a...
- 谷歌Material Design质感设计UI开发框架
-
谷歌MaterialDesign质感设计是一个新的用户界面设计概念,即将到来的Android版本称为“AndroidL”中会使用这种设计语言。在这篇文章中,我们收集出最新的和最好的Android...
- Android主流UI开源库整理(android 开源ui)
-
前言最近老大让我整理一份Android主流UI开源库的资料,以补充公司的Android知识库。由于对格式不做特别限制,于是打算用博客的形式记录下来,方便查看、防丢并且可以持续维护、不断更新。标题隐...
- 系统工具类App的开发框架(系统开发方法工具)
-
系统工具类App的开发框架选择,很大程度上取决于目标平台(Android、iOS或两者兼有),以及对性能、系统级访问深度和开发效率的需求。由于这类App常常需要深入操作系统底层,因此原生开发框架通常是...
- 2025年vue前端框架前瞻(vue前端开发规范手册)
-
Vue是一个轻量且灵活的JavaScript框架,广受开发者喜爱,因其简单易用的API和组件化的开发方式而闻名。Vite是一个现代化的前端构建工具,以其极快的开发服务器启动速度和热模块替换...
- 前端流行框架Vue3教程:28. Vue应用
-
28.Vue应用应用实例每个Vue应用都是通过createApp函数创建一个新的应用实例main.jsimport{createApp}from'vue'import...
- 2024 Vue 最全的生态工具组合推荐指南
-
Vue3虽然Vue2很多项目在用,但是官方已经宣布不再维护Vue2,所以新项目肯定首选Vue3来进行开发,组合式API开发起来比选项式API方便多了,而且Vue3的响应式实现也更...
- 基于 Vue3 Element Plus 的中后台管理系统模板
-
PureAdmin是一个开源的前端中后台管理系统模板,基于Vue3、Element-Plus,支持移动端、国际化、多主题设置,支持前端静态路由、后端动态路由配置,旨在为开发人员提供一个易于使用、高...
- 重磅!滴滴开源全新跨端小程序框架,基于 Vue 3!
-
最近,滴滴出行开源了自主研发的全新轻量级跨端小程序框架——星河(Dimina),为开发者提供了“一次开发,多端运行”的高性能、低门槛解决方案。下面就来一览Dimina的魅力!什么是星河(Dim...
- 【推荐】一款基于 Vue + .NET 8 开源、免费、功能强大的快速开发框架
-
如果您对源码&技术感兴趣,请点赞+收藏+转发+关注,大家的支持是我分享最大的动力!!!项目介绍Vue.NetCore是一款集高效、灵活、易于扩展于一体的快速开发框架(基于Vue提供Vue2/Vue...
- 搭建Trae+Vue3的AI开发环境(vue ide 开发工具)
-
从2024年2025年,不断的有各种AI工具会在自媒体中火起来,号称各种效率王炸,而在AI是否会替代打工人的话题中,程序员又首当其冲。作为一个后端开发,这篇文章基于Trae工具,来创建和运行一个简单的...
- 一款基于 Vue + .NET 8 开源、免费、功能强大的快速开发框架
-
项目介绍Vue.NetCore是一款集高效、灵活、易于扩展于一体的快速开发框架(基于Vue提供Vue2/Vue3版本和.NET8前后端分离),适用于多种应用场景。通过前后端分离的设计、强大的...
- 盘点一下这些年PHP在桌面应用方面的解决方案
-
今天作者给大家盘点一下近些年PHP在实现桌面客户端方面的项目。PHP-GTKPHP-GTK是2001年3月创立,是PHP的一个扩展,实现了与GTK+的绑定,提供面向对象的接口,极大地简化了客户端跨平台...
- PHP+Uniapp校园圈子系统校园论坛小程序开发:踩坑与优化经验分享
-
一、系统架构与技术选型1.架构设计采用前后端分离架构,前端使用Uniapp实现跨端开发(支持微信小程序、H5、App),后端基于PHP(推荐ThinkPHP或Laravel框架)提供RESTful...
- 智能匹配+安全护航:PHP代练系统护航小程序如何提升用户信任?
-
在代练行业中,用户信任是平台发展的核心要素。基于PHP后端与uni-app跨端框架的代练系统,通过智能匹配与安全护航两大核心策略,能够有效提升用户信任,构建健康可持续的代练生态。以下从技术实现与用户体...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- MVC框架 (46)
- 框架图 (58)
- flask框架 (53)
- quartz框架 (51)
- abp框架 (47)
- jpa框架 (47)
- springmvc框架 (49)
- 分布式事务框架 (65)
- scrapy框架 (56)
- shiro框架 (61)
- 定时任务框架 (56)
- java日志框架 (61)
- JAVA集合框架 (47)
- mfc框架 (52)
- abb框架断路器 (48)
- ui自动化框架 (47)
- beego框架 (52)
- grpc框架 (55)
- ppt框架 (48)
- 内联框架 (52)
- cad怎么画框架 (58)
- ps怎么画框架 (47)
- ssm框架实现登录注册 (49)
- oracle字符串长度 (48)
- oracle提交事务 (47)