【问题标题】:codeigniter : i need to use session variable inside My_Lang.phpcodeigniter:我需要在 My_Lang.php 中使用会话变量
【发布时间】:2014-11-05 07:09:09
【问题描述】:

给出错误:

遇到 PHP 错误
严重性:通知
消息:未定义的属性:MY_Lang::$session
文件名:core/MY_Lang.php

【问题讨论】:

    标签: codeigniter error-handling


    【解决方案1】:

    我不确定它是否会起作用,但我认为您需要在MY_Lang.php 中加载会话库:

    $ci = &get_instance();
    $ci->load->library("session");
    

    然后继续使用:

    $ci->session->userdata();
    

    【讨论】:

    • 你是如何使用这个类的?你能提供一些额外的代码吗?
    • github.com/dreamerslab/ci-i18n/blob/master/MY_Language.php 我正在使用这个函数 MY_Language() { $ci = &get_instance(); $ci->加载->库(“会话”); $segment = $ci->session->userdata('lang'); }
    • 您尝试将extends CI_Language 更改为extends CI_Lang 吗?
    【解决方案2】:

    从您的控制器传入会话变量。由于错误显示会话在 lang 类中不可用。在您的控制器中执行 -

        str_replace (["{session_var}"],[$this->session->userdata("some_value")],$this->lang->line("some_lang_line"));
    

    在您的语言文件中,您需要这样做:

        $lang["some_lang_line"]="your variable equals {session_var}";
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-10-02
      • 2015-09-21
      • 2014-05-03
      • 1970-01-01
      • 1970-01-01
      • 2012-04-24
      • 1970-01-01
      相关资源
      最近更新 更多