将变量从一个函数传递到另一个函数

时间:2014-09-22 18:33:49

标签: php mysql joomla

我正在使用Joomla! 2.5并且我试图将变量从公共函数传递到同一个类中的受保护函数,但是我做错了。不知道它是什么?

    public function getJobsType() {     

    $jobsquery = $db->getQuery(true);
    // Select the records for the connected user
    $jobsquery = "SELECT jobassigned FROM #__jobs_userac WHERE user =".$userId;
    $db->setQuery($jobsquery);
    $row = $db->loadRowList();
    // I have one row per user so it returns only one field
    $job_id = $row['0']['0'];
    return $job_id;}


    protected function getListQuery() {

    //If i set the variable values my self  the query is working
   // ex. $job_id ="1,2,3";

   $db = $this->getDbo();
   $query = $db->getQuery(true);


   $query ->select($this->getState('list.select', 'DISTINCT a.*'));
   $query->from('`#__jobs_data` AS a');

   // I want to pass the values from the getJobsType() here
   $query->where('type IN ('.$job_id.')');


        ................

提前感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:0)

根据评论,您的问题是您实际上没有将任何内容传递给受保护的功能。因此,按值传递job_id,如下所示:

return getListQuery($job_id);

并将您的功能定义更改为:

protected function getListQuery($job_id) {

有多种方法可以解决您的问题,但这似乎是最直接的方式。