drago-ex/simple

单页网站轻松配置。

v1.0.10 2023-12-01 10:56 UTC

This package is auto-updated.

Last update: 2024-09-12 09:30:05 UTC


README

单页网站轻松配置。

License: MIT PHP version Tests Coding Style CodeFactor Coverage Status

技术

  • PHP 8.1 或更高版本
  • composer

知识

安装

composer require drago/simple

Trait Session

use Drago\Simple\Base\Session

// Get session.
$this->session();

Trait Message

use Drago\Simple\Base\Message;

// Save message.
$this->flashMessage('Message...');

// Print message.
$this->getFlashMessage();

Trait Response

use Drago\Simple\Base\Response;

$this->redirect('#');

控制器

final class Home
{
	private Latte\Engine $latte;


	public function __construct(Latte\Engine $latte)
	{
		$this->latte = $latte;
	}
}

模板渲染

public function render(): void
{
	$this->latte->render(__DIR__ . '/path/to/dir/template.latte');
}

模板传递参数

public function render(): void
{
	$this-flashMessage('message...');
	$message['message'] = $this->getFlashMessage();
	$this->latte->render(__DIR__ . '/path/to/dir/template.latte', $message);
}

模板打印消息

<p n:if="$message">{$message}</p>

模板包含文件的默认参数

{$basePath}

表单

通过 composer 安装。

composer require nette/forms

表单 Latte 宏。

$latte->onCompile[] = function () use ($latte) {
	FormMacros::install($latte->getCompiler());
};

翻译器

通过 composer 安装。

composer require drago-ex/translator

翻译器属性。

private array $lang = ['en', 'cs'];

翻译器语言检测。

$translator = new Translator(__DIR__ . '/locale');
$translator->setTranslate((new RequestFactory())->fromGlobals()
	->detectLanguage($this->lang)
);

翻译器 Latte 过滤器。

$latte->addFilter('translate', function ($message) use ($translator) {
	return $translator->translate($message);
});

为简单项目准备好的包

https://github.com/drago-ex/simple-project