PHP code example of baiy / cadmin
1. Go to this page and download the library: Download baiy/cadmin library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
baiy / cadmin example snippets
$admin = new \Baiy\Cadmin\Admin($pdo, $request);
// $admin->setTablePrefix(); // [可选] 设置系统内置数据表前缀 设置后注意修改表名
// $admin->registerDispatcher(); // [可选] 注册自定义请求调度器
// $admin->registerPassword(); // [可选] 注册自定义用户密码生成器
// $admin->setInputActionName($name); // [可选] 设置请求标识变量名
// $admin->setInputTokenName($name); // [可选] 设置请求token变量名
// $admin->setLogCallback(function(\Baiy\Cadmin\Log $log){}); // [可选] 请求日志记录回调函数
// [可选] 运行时SQL监听 便于日志记录 需要根据实际项目使用sql监听方法进行对应调用
// $admin->getContext()->addListenSql($sql, $time);
// 获取业务处理响应结果 返回 `Psr\Http\Message\ResponseInterface` 对象
$response = $admin->run();
use think\facade\Db;
use think\facade\Log;
use think\facade\Route;
// 客户端api路由入口 请求记住此url这是提供给客户端api地址
Route::any('/api/admin/', function (){
// 临时方案: tp 需要先查询一次数据库 才能获取到pdo对象
Db::connect()->execute("select 1");
// 自行构建 PSR-7 请求对象
$request = \Laminas\Diactoros\ServerRequestFactory::fromGlobals()
$admin = new \Baiy\Cadmin\Admin(Db::connect()->getPdo(), $request);
$admin->registerDispatcher(new \Baiy\Cadmin\Dispatch\Thinkphp60()); // [可选] 注册内置调度类
// 其他配置省略 见上方[入口代码说明] .....
// [可选] 设置请求日志记录回调函数
// $admin->setLogCallback(function (\Baiy\Cadmin\Log $log) {
// Log::write($log->toJson(), 'notice');
// });
// 运行时SQL监听 便于日志记录
// Db::listen(function ($sql, $time, $master) use ($admin) {
// $admin->getContext()->addListenSql($sql, $time);
// });
// 运行
return $admin->run();
})->allowCrossDomain();
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Route;
use Psr\Http\Message\ServerRequestInterface;
// 客户端api路由入口 请求记住此url这是提供给客户端api地址
// PSR-7 请求对象构建 https://learnku.com/docs/laravel/10.x/requestsmd/14849#psr7-requests
Route::any('/api/admin/', function (ServerRequestInterface $request) {
// 前后端分离项目一般会有跨域问题 自行处理
header('Access-Control-Allow-Origin: *');
$admin = new \Baiy\Cadmin\Admin(Db::connection()->getPdo(), $request);
$admin->registerDispatcher(new \Baiy\Cadmin\Dispatch\Laravel()); // [可选] 注册内置调度类
// 其他配置省略 见上方[入口代码说明] .....
// [可选] 设置请求日志记录回调函数
// $admin->setLogCallback(function (\Baiy\Cadmin\Log $log) {
// Log::info($log->toJson());
// });
// 运行时SQL监听 便于日志记录
// Db::listen(function ($query) use ($admin) {
// $admin->getContext()->addListenSql(
// sprintf(str_replace("?","%s",$query->sql),...$query->bindings),
// $query->time
// );
// });
// 运行
return $admin->run();
});
/route/app.php
/routes/api.php