1. 程式人生 > >記錄php中一種騷操作

記錄php中一種騷操作

ali imp result params div cte 函數 操作 expected

$options = array(
    ‘config‘ => array(
        ‘aaa‘ => 111,
        ‘bbb‘ => 222,
    ),
    ‘headers‘ => array(
        ‘Content-Type‘ => ‘application/json;charset=utf-8‘
    ),
    ‘params‘ => array(
        ‘p1‘ => ‘hello‘,
        ‘p2‘ => ‘world‘,
    ),
    ‘signOptions‘ => array
( ‘ccc‘ => ‘333‘, ), ); list($config,$headers,$params,$signOptions) = parseOptions($options,‘config‘,‘headers‘,‘params‘,‘signOptions‘); echo ‘<pre>‘; print_r($config); echo ‘<br>‘; print_r($headers); echo ‘<br>‘; print_r($params); echo ‘<br>‘; print_r($signOptions
); echo ‘<br>‘; function parseOptions(array $options) { return doParseOptions($options,array_slice(func_get_args(), 1),false); } function doParseOptions(array $options,array $args,$allowExtraOptions) { $result = array(); foreach ($args as $arg) { if (isset($options[$arg
])) { $result[] = $options[$arg]; unset($options[$arg]); } else { $result[] = null; } } if (!$allowExtraOptions && count($options) > 0) { throw new \InvalidArgumentException( ‘Unexpected options:‘ . implode(‘,‘, array_keys($options)) . ‘ Acceptable options are:‘ . implode(‘,‘, $args) ); } return $result; }

輸出結果:

Array
(
    [aaa] => 111
    [bbb] => 222
)

Array
(
    [Content-Type] => application/json;charset=utf-8
)

Array
(
    [p1] => hello
    [p2] => world
)

Array
(
    [ccc] => 333
)

關註點:

php中的元組,獲取參數列表函數

記錄php中一種騷操作