如何在PHP中创建类似wordpress的wordpress?

时间:2009-06-22 22:48:54

标签: php wordpress function

要将变量传递给函数,我会执行以下操作(正如我确定的其他人):

function addNums($num1, $num2)
{
    $num1 + $num2;
}

addNums(2, 2);

我的问题是如何构建一个像Wordpress一样的函数:

wp_list_categories('title_li=');

基本上我正在寻找一种在我的函数中创建键/值对的方法。 任何建议都表示赞赏。

2 个答案:

答案 0 :(得分:5)

parse_str()应该做你想做的事:http://www.php.net/parse_str

答案 1 :(得分:2)

您可以使用parse_str来解析参数的字符串。棘手的是你可能不想让任何和所有参数都被传入。所以这里只是允许某些参数在传入时使用的例子。

在以下示例中,仅允许foobarvalid

function exampleParseArgs($arg_string) {
    // for every valid argument, include in
    // this array with "true" as a value
    $valid_arguments = array(
        'foo' => true,
        'bar' => true,
        'valid' = true,
    );
    // parse the string
    parse_str($arg_string, $parse_into);
    // return only the valid arguments
    return array_intersect_key($parse_into,$valid_arguments);

}

baz将被删除,因为它未在$valid_arguments中列出。所以对于这个电话:

print_r(exampleParseArgs('foo=20&bar=strike&baz=50'));

结果:

Array
(
    [foo] => 20
    [bar] => strike
)

此外,您可以浏览Wordpress Source code here,当然也可以从wordpress.org下载。看起来他们做了非常相似的事情。