PHP函数多个参数

时间:2015-12-10 08:42:43

标签: php html parse-platform

我',尝试使用PHP更新解析行。我正在使用这个功能:

    if (isset($_GET['updateHistory']))
    {
        updateHistory($_GET['updateHistory']);
    }

    if (isset($_GET['yesNo']))
    {
        yesNo($_GET['yesNo']);
    }

function updateHistory($obId,$yesNo) {

        $bool = "";
        if ($yesNo == "YES") {
            $bool = true;
        } else {
            $bool = false;
        }

        $query = new ParseQuery("TestObject");
        try {
            $history = $query->get($obId);
            $history->set("isHistory", $bool);

            $history->save();
        } catch (ParseException $ex) {
             echo "Error Updating History";
        }
    reload();
}

现在的问题是我无法使用

传递$yesNo的第二个变量
<a href='?updateHistory=$obId&yesNo=YES'>YES</a>

如何传递第二个变量?谢谢!

2 个答案:

答案 0 :(得分:2)

struct A 
{
    int a;
    A ( int in )
    {
        a = in;
    }
    int getNumber( )
    {
        return a ;
    }; 
};


template < typename T > 
inline 
vector<T> listIntersection (  vector<T>& v1, vector<T>& v2, function<bool(T, T)> comprarer )
{
    std::sort(v1.begin(), v1.end(), comprarer);
    std::sort(v2.begin(), v2.end(), comprarer);

    vector<T> v_intersection;

    std::set_intersection(v1.begin(), v1.end(),
                          v2.begin(), v2.end(),
                          std::back_inserter(v_intersection), comprarer);

    return v_intersection;
}




int main()
{
    std::vector<A> v1{1,2,3,4,5,6,7,8};
    std::vector<A> v2{    11, 13, 5,  7,  9,10};

    std::vector<A> v_intersection;
    v_intersection = listIntersection<A>( v1, v2, []( A left, A right )
    {
        return left.getNumber() < right.getNumber();
    });

    for(auto n : v_intersection)
        std::cout << n.getNumber() << ' ';
}

答案 1 :(得分:1)

由于你的函数取决于所设置的两个变量,所以结合使用if语句来检查两个字段并对你的函数进行一次调用:

if (isset($_GET['updateHistory']) && isset($_GET['yesNo'])) {
    updateHistory($_GET['updateHistory'], $_GET['yesNo']);
}

然后你可以完全放弃这部分:

if (isset($_GET['yesNo']))
{
    yesNo($_GET['yesNo']);
}