0
//first function
function insertdigit(){
$userdigit=5;
$flag = $this->usermodel->userdigitmodel($userdigit);


        $value = array(
            'result' => $flag
        );
        echo json_encode($value);
        if ($flag == true) {
              return $userdigit;
        } else {
        }

}
//second function
function usedigit(){
$data['userdigit']=$this->insertdigit();
}

但我{"result":true}又回到了功能?如何访问不同成员函数中的成员变量

4

3 回答 3

0

尝试echo json_encode($value);在您的代码中删除。

于 2012-06-13T08:44:16.643 回答
0

如果您需要访问控制器上多个函数中的参数,则必须在函数之外创建它,以便它可用于所有控制器函数。

所以,在你的情况下,它应该是这样的:

class Test extends Controller
{
    private $userdigit; //here you can set a default value if necessary: private $userdigit = 5

     function insertdigit(){
        $this->userdigit=5;
        $flag = $this->usermodel->userdigitmodel($this->userdigit);


        $value = array(
            'result' => $flag
        );
        echo json_encode($value);
        if ($flag == true) {
              return $this->userdigit;
        } else {
        }

    }
    //second function
    function usedigit(){
      $data['userdigit']=$this->userdigit;
    }

}

这样,您的userdigit变量可用于所有功能。随着$this您告诉 PHP 您正在尝试访问类中的某些内容。

此链接包含更多有用的信息:http ://www.php.net/manual/en/language.oop5.properties.php

那是你真正需要的吗?

于 2012-06-13T12:15:39.637 回答
0

一个可能的解决方案:

function insertdigit() 
{
    $userDigit = 5;
    $flag = $this->usermodel->userdigitmodel($userDigit);
    $value = array
    (
        'result' => $flag
    );
    if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest')
    {
        echo json_encode($value);
    }
    if ($flag == true) 
    {
        return $userdigit;
    } 
    else 
    {
    }
}
//second function
function usedigit()
{
    $data['userdigit'] = $this->insertdigit();
}

上面的代码,ininsertdigit检测是否有 Ajax 请求,如果有,它将回显json_encoded 数据。如果您在正常请求中调用它,即通过usedigit它不会回显json_encoded 数据(除非您usedigit通过 Ajax 请求调用)。

你的问题并没有真正解释你在做什么,所以很难解释一个更好的解决方案,但是,如果你试图在多个地方访问一个“变量”,你应该真正分开你的代码,这样你就有一个该变量的入口点。

你的变量是动态的,还是静态的?

于 2012-06-13T13:15:27.317 回答