class main extends jcore
{
public function run()
{
   $pcategory = j::$cached->get('pcategory','cache/');
   return $this->do_index();
         } private function do_index()
{
            var_dump($pcategory);
             exit;
         }
}$pcategory 是個數組!
 
var_dump($pcategory);  為什麼取不到值呢?

解决方案 »

  1.   

    $pcategory 是局部变量,只在 run 中有效
    你若想在 do_index 中使用,则可以通过显式的传值
    public function run()
    {
    $pcategory = j::$cached->get('pcategory','cache/');
    return $this->do_index($pcategory);
      }private function do_index($pcategory)
    {
      var_dump($pcategory);
      exit;
      }也可以通过对象的属性传递
    public function run()
    {
    $this->pcategory = j::$cached->get('pcategory','cache/');
    return $this->do_index();
      }private function do_index()
    {
      var_dump($this->pcategory);
      exit;
      }