이것은 기본적인 Codeigniter (또는 PHP) 질문 일 수 있지만 사용자가 모든 페이지 호출에 대해 Ion Auth로 로그인했는지 확인하려고하고 있으므로 'Sign- '또는'로그 아웃 '링크를 클릭하십시오.MY_Loader 클래스의 Ion Auth check 로그인
내가 MY_Loader 클래스에서로드 내 헤더, 콘텐츠 및 바닥 글의 전망을 가지고 있고 사용자가 로그인되어 있는지 확인하는 $this->ion_auth->logged_in()
를 사용하려고했지만, 나는이 PHP 오류가 발생,
PHP Error: Undefined property: MY_Loader::$ion_auth
가 MY_Loader입니다 .php :
<?php
/**
* /application/core/MY_Loader.php
*
*/
class MY_Loader extends CI_Loader {
public function template_main($template_name, $vars = array(), $return = FALSE)
{
$vars['signin'] = $this->ion_auth->logged_in() ? 'signout' : 'signin';
$vars['signin_text'] = $this->ion_auth->logged_in() ? 'Sign-out' : 'Sign-in';
$content = $this->view('frontend/main_template/header', $vars, $return);
$content .= $this->view($template_name, $vars, $return);
$content .= $this->view('frontend/main_template/footer', $vars, $return);
if ($return)
{
return $content;
}
}
}
/* End of MY_Loader.php */
/* Location: ./application/core/MY_Loader.php */
나는 ion_auth 라이브러리를 자동로드하고 있습니다. MY_Loader 클래스에서 logged-in() 함수를 호출하려면 어떻게해야합니까?
나는 그것을 생각했다. 그런 다음 또 다른 오류가 발생합니다. '정의되지 않은 속성 : MY_Loader :: $ load' – mjpsr11
알았어, 알아 냈다고 생각해. $ this를 사용하는 대신 새로운 객체 변수'$ ia = new ion_auth();를 생성하고 $ ia-> ion_auth-> logged_in()을 사용했습니다. 이것은 예상대로 작동했습니다. 아마도 누군가 Codeignitor에 이것이 필요한 이유를 설명 할 수 있습니다. – mjpsr11
대신 사용해보십시오. $ ci = & get_instance(); $ ci-> ion_auth-> logged_in(); –