PHP中的任何真正的MVC库(用于GUI应用程序)

时间:2011-01-02 01:13:16

标签: php php-gtk php-qt

我想知道其中一个PHP gui库是否有任何抽象框架。我们有PHP-GTKPHP/Tk界面,似乎也是PHP-QT。 (没试过。)

我知道用Python编写原始的Gtk +接口是可以忍受的,因此它对PHP来说似乎不太诱人。我认为它对Qt来说是一样的,Tk也是相当低级的。所以我正在寻找能够在三者之一上提供更好的对象结构的东西。主要的TreeViews总是一件苦差事,php-gtk回调在PHP中很奇怪,所以我想简化一下。如果它很容易在没有太多控制代码的情况下在我的业务逻辑上添加GUI / View,那可能已经有所帮助。

因为GUI应用程序是MVC或MVP实际上有意义的领域,所以我想知道是否存在任何库。

  

仍然愿意接听答案   (可能会有第二轮赏金。这是一个不常见的话题,所以需要更多的研究。)

5 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

你试过WinBinder吗?不完全与MVC相关,但是在PHP中创建基于gui的程序的非常好的扩展。

答案 2 :(得分:1)

现在有一些选项可以在较新版本的php上使用。其中一些并没有为您提供开箱即用的MVC,但是您可以使用它们在php中创建GUI应用程序。

有一个非常易于使用的php-gui。它不需要任何特殊的php扩展,您可以像其他任何依赖您的php库或框架一样,通过composer安装它。它面向简单,标准的用户界面。

如果您需要做一些非常自定义和图形高级的事情,并且愿意使用旨在用C语言制作游戏的API(或者如果您想用php语言制作游戏),则可以通过通过ffi-sdl进行FFI。由于使用了最近添加的php ffi功能,它当前(截至2020年6月1日)要求php 7.4或更高版本。即使这依赖于ffi扩展,php-ffi仍然很容易添加到您的项目中。它仍然是无扩展名的(像php-gui一样),因为没有专门为此而量身定制的扩展。与其他一些扩展不同,由于ffi是php本身的功能,因此不会保留ffi的可能性很小。大多数人只需要使用composer将ff-sdl添加到他们的项目中,并可能在其php.ini中启用ffi。

我刚刚了解到您也可以使用PeachPie。它允许您在.NET上编译和运行php代码,因此您将可以访问.NET GUI库,包括MVC库。

答案 3 :(得分:0)

我真的怀疑你会发现任何类似的东西准备好使用OotB。 PHP GUI编程几年前完全失败了。

然而,你可以做的是使用某种桥梁来接口来自另一种语言的体面MVC。你有哪些PHP选择:

答案 4 :(得分:0)

http://phpketchup.isgreat.org/ PHPKetchup 是规划阶段的新项目。目前没有任何代码可用(似乎也是商业用途,不是开源代码)。它被宣布为PHP-GTK上的框架。有一个conception document明确地列出了设计MVC框架的目标。

然而,似乎他们从CodeIgniter获取灵感,主要是常见的PHP框架结构。重点似乎不在于将PHP-GTK与应用程序逻辑集成,而主要是为了提供数据库接口作为模型和View的瘦Gtk接口。

  

MVC架构:
  我们将为PHP-GTK框架设计和实现模型 - 视图 - 控制器(MVC)架构。 SQLite将用于Model。删除HTML,CSS和Javascript后,PHP-GTK函数和Glade文件将集成到View中。将相应地修改控制器以使用新创建的视图。

所以它可能只是MVC的名称和组织,但其中一个图提到了“PHP-GTK函数添加”,还有一些对象结构的Gtk助手的暗示。