【发布时间】:2018-03-30 03:33:21
【问题描述】:
我已经在控制器中定义了静态变量,但是当我在函数中使用该变量时,它会给出未定义的变量错误。
控制器
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Quiz extends Admin_Controller {
private static $secure_key = "aXXXXXXXXc";
public function __construct()
{
parent::__construct();
}
public function edit($id)
{
try
{
$token = JWT::encode($postdata, $secure_key);
echo "<pre>";print_r($token);exit;
}
catch(Exception $e){
$this->data['error'] = $e->getMessage();
redirect('/','refresh');
}
}
}
$token 使用 jwt 正确打印,但出现错误
Undefined variable: secure_key
我尝试了不同的方法将$secure_key定义为
public static $secure_key = "aXXXXXXXc;
static $secure_key = "aXXXXXXXc;
我尝试在构造函数中将$secure_key 定义为
$secure_key = "aXXXXXXXc;
但没用。为什么这样?请帮忙。我正在使用 codeigniter 3
【问题讨论】:
-
$token = JWT::encode($postdata, $secure_key);...$postdata似乎未定义,$secure_key是一个静态类变量(所以self::$secure_key)?
标签: php codeigniter codeigniter-3 static-variables