可以';t在同一类php中的另一个diff函数中获取一个函数中variable的集值


Can't get the set value of varible in one function in other diff func in the same class php

我对这个变量"admin_user_id"有问题。。我想在一个函数中设置var的值,并在其他函数中使用该var值。。但问题是它给出了null。我认为这是该类的差异引用的bcz。。

class ChangeRequestProcessController extends AppController{
static $admin_user_id;
public function ajax_list_of_change_request(){
    $this->autoRender = false;
    $params = array();
    $params[] = $this->Auth->user('id');
    //debug($params);
    $result =  $this->AppProcess->callProcedure('ListOfChangeRequestProcess', $params);
    //echo("here:"+$result);
    $admin_user_id=$params[0];
    //debug( $this->admin_user_id);
    echo json_encode($result);
}
 public function application_attachment_upload_with_title() {
    $this->autoRender = FALSE;
    $attachment_array[]=$this->admin_user_id;///p_admin_user_id
    //$attachment_array[]="name";///p_uploaded_by
    $attachment_array[]=$_POST['title'];///p_attachment_title
   // $attachment_array[] = $loged_on_id;
    //$attachment_array[] = $_FILES[0]['name'];
    //$attachment_array[] = $_POST['title'];
    debug($attachment_array);
    $result = $application->AttachmentTemp->callProcedure('ChangeRequestAttachmentFinalAddWithTitle', $attachment_array);///call procedure
    echo json_encode($result);///result
}

如何在php中解决这个问题,使值保持不变(我认为静态var会解决这个问题……但它也会在函数内部给出未定义的var错误)???提前感谢

(这不适合评论框,所以我开始…)

假设

// your code to get this...
$admin_user_id = $params[0];

您可以使用以下方法将其存储在会话中:

if(!session_id()){
    session_start();
}
$_SESSION['admin_user_id'] = $admin_user_id; // again, assuming this is the value!

要读取它(在您的第二个调用/方法中),只需执行:

if(!session_id()){
    session_start();
}
$admin_user_id = $_SESSION['admin_user_id'];

有关更多信息,请参阅php.net:sessions和$_SESSION