php - 如何自定义smarty中的错误处理?

标签 php codeigniter error-handling smarty smarty3

嗨,我想自定义我的错误处理...这是场景

  • 在php Controller 中定义
    码:
    $this->CI->smarty->assign('_setData', $set_data);
    
  • $ set_data包含
    码:
    Array
    (
        [facebook] => https://facebook.com/ <---- this will be removed i
        [instagram] => https://instagram.com/
        [twitter] => https://twitter.com/
    )
    
  • HTML 中的
  • 代码

    码:
    {$_setData.facebook}
    
  • 我收到错误

  • 码:
    Severity: Notice
    Message: Undefined index: facebook
    Filename: templates_c/5125124f1e59f2258a491707dcd0a86cf434db62_0.file.home_template.html.php
    Line Number: 94
    Backtrace:.......
    

    5.我知道数组中没有facebook,但是我想调整以下错误:如果未在 Controller 中定义变量(例如facebook),则聪明代码(例如{$ _setData.facebook})只会显示null/empty/0。

    我怎样才能做到这一点?这可以调整聪明人吗?

    如果您对我的帖子有任何疑问或澄清,请告诉我。

    最佳答案

    您可以在php文件中更改smarty错误报告级别,并使用以下命令排除通知(或模板中的任何其他通知/错误):

    $smarty->error_reporting = error_reporting() & ~E_NOTICE;
    

    您还可以在模板内部使用默认修饰符:
    {$_setData.facebook|default:''}
    

    关于php - 如何自定义smarty中的错误处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37018289/

    相关文章:

    php - 全局访问模板中的用户对象

    Codeigniter - 不允许的关键字符,调整代码

    php - 如何在PHP中获取值形式的数组

    与 PostgreSQL 的 Perl DBI 连接不会因数据库错误而终止()

    php - WHERE DateInterval 无法转换为字符串

    php - 访问注册商标的数组键

    php - Doctrine Fatal Error - 未知关系别名

    c++ - 如何防止插件崩溃影响主程序 (dlopen)

    javascript - 使用 Node.js 以编程方式运行 JavaScript

    php - ID 不回显学生姓名的 URL 查询