文件
mashangyoujiu/_ai_archive/scripts/debug_auth.php

45 行
1.2 KiB
PHP

<?php
// 调试权限验证逻辑
define('MODULE_NAME', 'Retail');
define('CONTROLLER_NAME', 'Xcx');
define('ACTION_NAME', 'storeSet');
$path = '/index.php/'.MODULE_NAME.'/'.CONTROLLER_NAME.'/'.ACTION_NAME;
echo "当前请求路径: {$path}\n";
// 模拟数据库查询
$dbPath = '/index.php/Retail/Xcx/manager,/index.php/Retail/Xcx/storeSet';
echo "数据库中的权限路径: {$dbPath}\n";
// 测试匹配逻辑
$map_string = "`path` LIKE '{$path},%' OR `path` LIKE '%,{$path}' OR `path` LIKE '%,{$path},%' OR `path` LIKE '{$path}'";
echo "\nSQL匹配条件: {$map_string}\n";
// 手动测试匹配
$patterns = [
"{$path},%",
"%,{$path}",
"%,{$path},%",
"{$path}"
];
foreach ($patterns as $pattern) {
$regex = str_replace('%', '.*', $pattern);
$regex = '/^' . str_replace('/', '\\/', $regex) . '$/';
echo "\n测试模式: {$pattern}";
echo "\n正则表达式: {$regex}";
if (preg_match($regex, $dbPath)) {
echo " -> 匹配成功!\n";
} else {
echo " -> 匹配失败\n";
}
}
// 直接测试LIKE逻辑
echo "\n\n直接LIKE测试:\n";
if (strpos($dbPath, $path) !== false) {
echo "路径包含匹配: 成功\n";
} else {
echo "路径包含匹配: 失败\n";
}
?>