You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在CodeIgniter(CI)页脚模板中全局调用当前年份

附带问题解答

1. <?=语法是不是CI特有?

不是,这是PHP原生支持的短输出标签,等价于<?php echo ... ?>,只要PHP配置项short_open_tag开启即可使用,CI框架默认推荐该写法简化代码,不属于CI专属语法。

2. 数组末尾加逗号的原因是什么?

这是PHP 7.3及以上版本支持的数组尾随逗号特性,属于代码书写优化:

  • 新增数组元素时不需要额外给前一行补逗号
  • 版本控制的差异记录更干净,新增元素只会产生一行变更
  • 没有功能层面的影响,去掉逗号代码也能正常运行。

3. 其他方案的使用说明

如果你不想用继承控制器的方案,也可以用自定义全局助手实现:

  1. 在app/Helpers(CI4)或application/helpers(CI3)目录下新建common_helper.php:
if (!function_exists('get_current_year')) {
    function get_current_year() {
        // 静态变量保证单次请求仅计算一次年份
        static $year;
        if (empty($year)) {
            $year = date('Y');
        }
        return $year;
    }
}
  1. 配置全局自动加载助手:CI4在app/Config/Autoload.php的$helpers数组加入'common';CI3在application/config/autoload.php的$autoload['helper']数组加入'common'。
  2. 页脚模板直接调用即可:<?= get_current_year() ?>

你之前直接在页脚写PHP代码不生效,大概率是没有用CI的view()方法加载页脚,或者页脚文件后缀不是.php,只要是通过CI视图加载的.php文件,内部的PHP代码都会正常解析。


内容的提问来源于stack exchange,提问作者youcantryreachingme

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 17:45:04