drago-ex / simple
单页网站轻松配置。
v1.0.10
2023-12-01 10:56 UTC
Requires
- php: >=8.1 <8.4
- latte/latte: ^3.0
- nette/http: ^3.0
- nette/robot-loader: ^3.2
Requires (Dev)
- nette/tester: ^2.5
- phpstan/phpstan-nette: ^1.2.9
- tracy/tracy: ^2.10
README
单页网站轻松配置。
技术
- 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); });