1

次の URL 文字列をこぼす最善の方法を見つけようとしています。

エリア-FFFFFF_miles-100_profession-web+developer

基本的に次のようになります。

$area = "FFFFFF";
$miles = 100;
$profession = "web developer";

しかし、私は脳ブロックを持っていて、それを行う最も効率的な方法を実際に理解することはできません. 助言がありますか?

ありがとう。

-編集-次のような欠損値を考慮して行うことができます。

エリア-FFFFFF_miles-_profession-web+developer

マイルの紛失など

4

3 に答える 3

4
$params = explode('_', $input);
foreach($params as $param) {
    $kv = explode('-', $param);
    ${$kv[0]} = str_replace('+', ' ', $kv[1]);
}

これは欠損値も考慮します。

于 2012-06-29T08:50:15.010 に答える
2

preg_splitを使用できます:

preg_split("/[_-]/",...);
于 2012-06-29T08:48:15.387 に答える
0

このようなもの:

$paramsStr = 'area-FFFFFF_miles-100_profession-web+developer';

$parts = explode('_', $paramsStr);
foreach($parts as $part) {
    $pair = explode('-', $part);
    ${$pair[0]} = $pair[1];
}
于 2012-06-29T08:53:28.170 に答える