it-all/pageflow
最新稳定版本:v0.77
Composer 安装命令:
composer require it-all/pageflow
包简介
Pageflow initializes a PHP page controller app with important PHP settings, a custom error handler, optional PHPMailer access, optional PostGreSQL database connection (PHP pgsql extension required).
README 文档
README
Pageflow initializes a PHP page controller app with important PHP settings, a custom error handler, optional authentication and autorhization using PHP-Auth, optional emailing using PHPMailer, optional PDO (PDO extensions required), optional PostgreSQL database connection (PHP pgsql extension required).
Why Page Controller?
Small and medium sized web apps may not need the overhead of front controlled frameworks. Request routing in front controllers adds a layer of abstraction and complexity that can be eliminated by a simple page controller model, with only 1 required file at the top of each page to provide initialization settings and access to commonly used features.
Requirements
PHP 7.3+
Installation & Usage
$ composer require it-all/pageflow
Copy .env.example to .env in your top level directory, and edit the settings.
Add the following code to the top of your php file(s):
use Pageflow\Pageflow;
define('ROOT_DIR', dirname(__DIR__));
define('VENDOR_DIR', ROOT_DIR . '/vendor');
require VENDOR_DIR . '/autoload.php';
$pageflow = Pageflow(ROOT_DIR);
Or create an init.php file with the code above and require it at the top of your php file(s).
phpdotenv
To access phpdotenv in order to validate your own environmental variables:
$dotEnv = $pageflow->getDotEnv();
Custom Error Handler
Handles as many PHP errors and uncaught exceptions as possible. Provides a stack trace to help debug.
- Display
- Does not display errors on production server.
- Optionally displays errors on test servers.
- Log
- Logs to file configured in .env.
- Emails errors to webmaster configured in .env.
- Throttles email rate to 10 per hour max (otherwise emails on every page load can cause server slowdown).
PHPMailer
Set appropriate .env vars to instantiate a helpful service layer object called $emailer. Then access with:
$emailer = $pageflow->getEmailer();
then:
$emailer->send('Subject', 'Body', ['self@example.com']);
PHP-Auth
Follow the database table creation instructions to enable. Requires PDO.
To access use:
$auth = $pageflow->getAuth();
PDO
Set the connection string var in .env to connect to a database using PDO. Note that this is required for Auth.
To access use:
$pdo = $pageflow->getPDO();
PostgreSQL Database
Set the connection string var in .env to instantiate a helpful service layer object, which includes a Query Builder. Use that to run queries, or the connection resource to query using native PHP pg functions.
$postgres = $pageflow->getPostgres();
$pgConn = $pageflow->getPgConn();
Session
Set the SESSION_TTL_MINUTES var in .env to start a secure PHP session.
统计信息
- 总下载量: 17
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: GPL-3.0
- 更新时间: 2025-12-12