toolkit/web-utils

PHP 的简单网络工具库

v1.0.6 2018-10-15 06:48 UTC

This package is auto-updated.

Last update: 2024-09-15 20:16:19 UTC


README

  • 一个简单的 PHP 视图渲染器,前端资源加载管理
  • url,html,curl 辅助类

用法

视图渲染

  • 支持布局,数据渲染
  • 支持简单的资源管理和加载
  • 支持在视图文件中包含其他文件
$renderer = new \Toolkit\Web\ViewRenderer([
    'viewsPath' => __DIR__ . '/views',
    'layout' => 'my-layout.php',
]);

echo $renderer->render('home/index', ['name' => 'inhere']);
  • 设置页面属性并添加资源
// before call render()
$renderer
    // page info
    ->setPageTitle($title)
    ->setPageMeta($keywords, $description)
    // assets
    ->addTopCssFile('/assets/libs/highlight/styles/default.css')
    ->addBottomJsFile([
        '/assets/libs/highlight/highlight.pack.js',
        '/assets/libs/markdown-it/markdown-it.min.js',
        '/assets/src/article/view.js'
    ]);
  • 在视图模板文件中。
/**
 * @var \Toolkit\Web\ViewRenderer $this
 */

<!doctype html>
<html lang="en">
<head>
  <!-- Required meta tags -->
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  <link href="/assets/libs/bootstrap/bootstrap.min.css" rel="stylesheet">
  <link href="/assets/src/app.css" rel="stylesheet">
  <title><?= $this->getTitle('Hello, world!') ?></title>
  <!-- output page assets -->
  <?php $this->dumpTopAssets() ?>
</head>
<body>

<?php $this->include('_layouts/common-header'); ?>

<main role="main" class="container content-main">
  <div class="row">
    <div class="col-md-8 blog-main">
    <!-- content output -->
    {__CONTENT__}
    </div>
    <aside class="col-md-4">
      sadebar .... my name is: <?= $name ?>
    </aside>
  </div>
</main>

<?php $this->include('_layouts/common-footer'); ?>

<!-- Optional JavaScript -->
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="/assets/libs/jquery.min.js"></script>
<script src="/assets/libs/bootstrap/bootstrap.min.js"></script>
<script src="/assets/src/app.js"></script>

<!-- output page assets -->
<?php $this->dumpBottomAssets() ?>

</body>
</html>

闪存消息

$flash = new Flash();

// a page
$flash->warning('page-msg', 'Please login to operate!');

// an other page
$msg = $flash->get('page-msg');

许可协议

MIT