应使用 find + mv 脚本批量将 resources/views 下所有 .blade.php 文件重命名为 .php,并更新 view() 调用及 config/view.php 的 extensions 配置。

你需要把 Laravel 项目里所有 .blade.php 视图文件批量改成 .php 后缀,但又不想手动一个个重命名——尤其当项目有上百个视图文件、分散在 resources/views 及其子目录下时,手动操作极易漏改或误删。
确认当前视图文件分布和后缀现状
打开终端,进入 Laravel 项目根目录,执行:find resources/views -name "*.blade.php" | head -20。这一步能快速看到实际有多少文件待处理、是否混杂了非 blade 文件(比如纯 .php 或 .txt),避免后续脚本误操作。
如果输出为空,说明当前没有 .blade.php 文件,脚本无需运行;如果大量存在,继续下一步。
编写并运行批量重命名脚本
在项目根目录新建文件 rename-blade.sh,用任意编辑器写入以下内容:
#!/bin/bash
find resources/views -name "*.blade.php" -print0 | while IFS= read -r -d '' file; do
newname="${file%.blade.php}.php"
mv "$file" "$newname"
echo "✅ 已重命名: $(basename "$file") → $(basename "$newname")"
done
给脚本添加执行权限:chmod +x rename-blade.sh。
运行脚本:./rename-blade.sh。脚本会逐个处理匹配到的文件,打印每条重命名记录。注意:该操作不可逆,【运行前必须已提交 Git 或备份 resources/views 目录】。
验证修改结果并清理残留引用
执行 find resources/views -name "*.blade.php",确认返回为空。
搜索项目中所有仍调用 view('xxx.blade') 的地方:grep -r "\.blade" app/ resources/lang/ routes/ --include="*.php"。若发现残留,需手动将 .blade 从 view() 参数中删除,例如把 view('auth.login.blade') 改成 view('auth.login')。
检查 config/view.php 中 ‘extensions’ 配置项是否已移除 'blade.php',仅保留 'php' ——否则 Laravel 仍会尝试加载 .blade.php 后缀。











