将变量从一个函数发送到另一个函数

时间:2012-11-16 11:06:54

标签: php

基本上,我有两个函数,如下所示,第一个函数检查拾取是否是机场地址(通过jquery函数的ajax发送)。如果它是机场基本上我想从getAirportFare函数发送变量$ fare到getFinalFare函数,所以如果它是机场地址它会增加费用。我只是想知道我会怎么做? (仍在尝试学习PHP)

非常感谢任何帮助。

//DEBUG//

public function getAirportFare($fare, $fieldAirport) {

if ($fieldAirport == 'airport') {

    $fare = $fare + 50.00;

    return $fare;

    }

}

//END OF DEBUG//

private static function getFinalFare($fare) {

    $final_fare = ($fare * self::$fare_factor);

    if (self::$str_wait_return == "true") {
        $final_fare = $final_fare * 2;
    }

    if (self::$str_return == "true" && self::$return_date != "false" && self::$return_time != "false") {

        // We need to calc to fare based on the return date and time
        $return_fare = self::getFare(1);

        // Append to final fare
        $final_fare = $final_fare + $return_fare;

    }

    // Create new journey object with the info that we have so far

    /*$journey = new Journey($journey_id,$pickup,$dropoff,$vias,$distance,$vehicle,
                    $date_time,$return_journey,$meet_greet,$extras);*/

    return number_format($final_fare,2);

}

3 个答案:

答案 0 :(得分:0)

如果我理解这一点,就像这样简单:

//DEBUG//

public function getAirportFare($fare, $fieldAirport) {

if ($fieldAirport == 'airport') {

    $fare = $fare + 50.00;

    // Send the fare to the getFinalFare function and assign it's result.
    $final_fare = self::getFinalFare($fare);
    return $final_fare;

    }

}

如果我没有回答你的问题,请告诉我。

答案 1 :(得分:0)

要将变量从一个函数发送到另一个函数(或者从实例方法发送到静态方法,就像在这里一样),在第一个函数中调用第二个函数,并将变量作为参数传递给它,就像所以:

public function getAirportFare($fare, $fieldAirport) {

   if ($fieldAirport == 'airport') {

     $fare = $fare + 50.00;

     return self::getFinalFare($fare); 

    }

 }

您的实例方法现在将返回静态方法的返回值。

答案 2 :(得分:-2)

我相信您必须在函数外部声明global $fare,并且在其中使用时,请使用$this->fare