快速上手
zin 还在成长中
zin 还处于开发阶段,一些概念和 API 可能会不断迭代更新。虽然 zin 支持在任何 PHP 环境中使用,但目前只对 ZentaoPHP 框架进行了适配。zin 的实现代码包含在禅道开源版仓库中,本文档中的一些示例也会以禅道 ZentaoPHP 开发环境为主。
快速体验
假设当前目录结构如下:
ini
zin_demo/
└── zin/
├── core/
├── wg/
└── zin.php
其中的 zin_demo/zin/
目录为 zin 库源码目录,在 zin_demo/
目录下创建 demo.php
文件,并写入如下内容:
php
/* 1. 使用 zin 相同的命名空间,可以简化方法名和避免名称冲突 */
namespace zin;
/* 2. 引入 zin 库文件 */
include 'zin/zin.php';
/* 3. 向页面插入一个 <h1>Hello world!</h1> */
h1('Hello world!');
/* 4. 渲染页面 */
render();
用 WebServer 访问 zin_demo/demo.php
文件将看到如下内容:
输出的 HTML 为:
html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="renderer" content="webkit">
</head>
<body>
<h1>Hello world!</h1>
</body>
</html>
禅道中的例子
下面以使用 zin 实现禅道项目集列表页面为例,原 view 文件为 module/program/view/browse.html.php
。
1. 创建 view 文件
创建 module/program/ui/browse.html.php
文件,并写入如下内容:
php
namespace zin;
2. 定义页面要用到的数据
提前定义页面构建时需要的配置和数据。
php
namespace zin;
/* 定义页面结构中要用到的数据 */
$headingSetting = ...; // 页面顶部左侧标题区域数据
$navbarSetting = ...; // 页面顶部导航数据
$userToolbarSetting = ...; // 页面顶部右侧用户工具栏数据
$mainMenuSetting = ...; // 页面主体部分菜单数据
$dTableSetting = ...; // 页面数据表格定义数据
3. 定义页面 UI 结构
最后调用各种部件实例化方法来创建页面。
php
namespace zin;
/* 定义页面结构中要用到的数据 */
$headingSetting = ...; // 页面顶部左侧标题区域数据
$navbarSetting = ...; // 页面顶部导航数据
$userToolbarSetting = ...; // 页面顶部右侧用户工具栏数据
$mainMenuSetting = ...; // 页面主体部分菜单数据
$dTableSetting = ...; // 页面数据表格定义数据
/* 调用 header 部件定义页面头部 */
header
(
set('heading', $headingSetting),
set('navbar', $navbarSetting),
set('userToolbar', $userToolbarSetting),
);
/* 调用 main 定义页面主题部分 */
main
(
mainMenu(set($mainMenuSetting)),
dTable(set($dTableSetting));
);
php
/* 待补充 */
用浏览器访问 http://localhost/program-browse.html 即可查看实际效果。
继续学习
如果你还没有阅读 为何用 zin?,强烈建议先阅读一下。如果已经感觉良好,可以从下面的页面开始: