myphp-runtime

中文文档
1.161.0发布于 2026/11/04MITTypeScriptES Module零依赖构建来源已验证

在MyPHP桌面应用程序的页面中键入访问MyPHP运行时

中文使用文档

myphp-runtime

类型化访问MyPHP应用程序的运行时; 为他们的网络前端服务。

MyPHP将其运行时注入到应用程序的每个页面中 window.myphp。这 包为它提供了类型和导入。客户端 myphp generate 写 为你绑定的PHP服务是建立在它上面的,所以你主要使用它:

import { Greeter, events } from "./myphp"; // generated

const greeting = await Greeter.greet("Ada");
events.tick.on((time) => console.log(time));

从npm安装它, npm install myphp-runtime,或者依赖于它 应用程序运行在MyPHP上, "myphp-runtime": "file:<MyPHP>/packages/runtime", 作为 myphp init -template web 写它。它的模块是TypeScript,其中 维特和布恩安于现状。

将包直接用于窗口和平台:

import { currentWindow, isCallError, isMyPHP, runtime } from "myphp-runtime";

if (isMyPHP() && runtime().platform === "darwin") {
  document.body.classList.add("mac");
}
await currentWindow.toggleMaximize();

一个PHP方法,通过 MyPHP\Channel 参数需要 一个 Channel 取而代之的是:

import { Channel } from "myphp-runtime";

const lines = new Channel<string>();
const done = Shell.tail("ls -R", lines);
for await (const line of lines) console.log(line);
await done;

抛出拒绝的PHP方法 CallError (见 isCallError). 在MyPHP窗口外,例如,当开发服务器在 浏览器,呼叫拒绝和 isMyPHP() 是假的。

myphp-runtime/i18n 在其页面中格式化应用程序目录的信息, 作为 MyPHP\Message 在PHP: ICU MessageFormat的消息,与复数 的规则、号码和日期 Intl。 myphp generate 的类型化模块 客户端旁边的目录(locales.ts)之上;

import { messages } from "./locales"; // generated

status.textContent = messages.filesSelected(3); // "3 files selected"

formatMessage(locale, message, args) 格式化您自己的消息。

版本与发布记录

myphp-runtime 共发布 110 个版本,首次发布于 2026/10/26;过去 12 个月发布了 110 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.161.0latest2026/11/04今天
1.160.02026/11/04今天
1.159.02026/11/041 天前
1.146.02026/11/023 天前
1.145.02026/11/013 天前
1.143.02026/11/013 天前

关于 myphp-runtime 的常见问题

myphp-runtime 是什么?

在MyPHP桌面应用程序的页面中键入访问MyPHP运行时

如何安装 myphp-runtime?

在项目目录运行 npm install myphp-runtime,或使用 pnpm add / yarn add / bun add。

myphp-runtime 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

myphp-runtime 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

myphp-runtime 可以商用吗?

myphp-runtime 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

myphp-runtime 还在维护吗?

最新版本 1.161.0 发布于 2026/11/04(今天);至今共发布 110 个版本,其中过去 12 个月发布了 110 个;首次发布于 2026/10/26。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。