Skip to content

'webui' 的 php 绑定 实现跨平台桌面应用。'webui' binds php for cross-platform desktop applications.

Notifications You must be signed in to change notification settings

KingBes/php-webui-composer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

WebUI for PHP

Use any web browser or WebView as GUI, with your preferred language in the backend and modern web technologies in the frontend, all in a lightweight portable library.

Screenshot

中文自述

composer

composer require kingbes/webui
require
PHP 8.1+
FFI *
Windows-x64 true
Linux-x64 true
Linux-arm To be tested
Linux-arm64 To be tested
MacOs-x64 To be tested
MacOs-arm64 To be tested

example

  1. Example I

index.html

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- You must add webu.js; otherwise, the interaction cannot be performed -->
    <script src="webui.js"></script>
</head>

<body>
    <button onclick="btn()">asd</button>
    <script>
        function btn() {
            hello('hello').then(function (res) {
                console.log(res)
            })
        }
    </script>
</body>

</html>

index.php

require "./vendor/autoload.php";

use Kingbes\Webui;
use Kingbes\JavaScript;

$Webui = new Webui;
$html = file_get_contents(__DIR__ . DIRECTORY_SEPARATOR . "index.html");
$window = $Webui->newWindow();
$bind = $Webui->bind($window, "hello", function ($event, JavaScript $js) {
    // Gets the first argument as a string
    $arg_one = $js->getString($event);
    var_dump($arg_one);

    // return string
    $js->returnString($event, "nihao");
});
$Webui->show($window, $html);
$Webui->wait();
$Webui->clean();

Various usage instructions

  1. Webui Webui class
  2. JavaScript Used to interact with js bindings
  3. Wrapper Wrappers that wrap the entire interaction, etc
  4. Cobj Wrappers, which wrap the entire interaction with other C object classes, some functions may be required

MORE

website

About

'webui' 的 php 绑定 实现跨平台桌面应用。'webui' binds php for cross-platform desktop applications.

Resources

Stars

Watchers

Forks

Packages

No packages published