页面空白通常因php执行出错被静默屏蔽,需检查三件事:一是environment是否设为development以开启错误提示;二是php版本是否匹配框架要求(ci4需php 8.0+,ci3推荐php 7.4);三是index.php、base_url及autoload等基础配置是否正确。

页面空白通常不是“没内容”,而是 PHP 执行出错但被静默吞掉了。重点检查三件事:错误是否被屏蔽、PHP 版本是否兼容、关键配置是否写错。
确认错误显示是否开启
CodeIgniter 默认在 production 环境下关闭错误提示,导致白屏无任何线索。
- 打开项目根目录下的 index.php,找到类似
define('ENVIRONMENT', 'production');这一行 - 临时改为
define('ENVIRONMENT', 'development'); - 刷新页面——如果出现报错信息(如 Parse error、Class not found),说明问题可定位;如果仍是白屏,继续往下查
验证 PHP 版本与框架要求匹配
版本不兼容常引发解析失败,尤其 CI4 要求 PHP 8.0+,CI3 推荐 PHP 7.4(PHP 8.0+ 也可运行,但需注意废弃函数)。
- 在浏览器访问 http://localhost/your_project/phpinfo.php(若没有,新建一个文件写
<?php phpinfo(); ?>) - 查看 “PHP Version” 行,确认是否满足框架最低要求
- 常见症状:
Parse error: syntax error, unexpected token "&"或undefined function mysql_connect(),基本可锁定为版本或扩展问题
检查 index.php 入口和基础配置
入口文件被修改、base_url 错误或 autoload 设置异常,都可能导致视图无法加载或路径失效。
- 确认 index.php 文件未被意外删改,尤其是第 150 行左右的
require_once BASEPATH.'core/CodeIgniter.php';是否存在 - 打开 application/config/config.php,检查
$config['base_url']是否为空或写成相对路径(应为完整 URL,如http://localhost/my_ci/) - 若启用了自动加载(如 helpers、libraries),检查 application/config/autoload.php 中是否存在拼写错误或不存在的项(例如写成
'url_helper'却漏了_helper后缀)
留意数据库驱动相关静默失败
某些旧版 CI 在数据库扩展缺失时不会报错,而是直接终止执行——尤其 CI2/CI3 中的 mysql 驱动已废弃,但错误被 @ 符号压制。
- 打开 application/config/database.php,确认
$db['default']['dbdriver']值正确(CI3 常用mysqli,CI4 默认MySQLi或PDO) - 在终端运行
php -m | grep mysqli(Linux/macOS)或查看 phpinfo() 中 MySQLi 模块是否启用 - 若使用 CI2 或早期 CI3,避免配置
mysql驱动——该驱动在 PHP 7.0+ 已移除,必须换为mysqli











