38 lines
1.1 KiB
Haxe
Executable File
38 lines
1.1 KiB
Haxe
Executable File
package haxework.utils;
|
|
|
|
class UrlUtil {
|
|
|
|
public static function parseParams(url:String):Map<String, String> {
|
|
var result:Map<String, String> = new Map<String, String>();
|
|
var tmp:String = url == null ? null : url.split("?")[1];
|
|
if (tmp != null) {
|
|
var tmpArr:Array<String> = tmp.split("&");
|
|
for (item in tmpArr) {
|
|
var itemArr:Array<String> = item.split("=");
|
|
result.set(itemArr[0], itemArr[1]);
|
|
}
|
|
result;
|
|
}
|
|
return result;
|
|
}
|
|
|
|
public static function parseParamsDynamic(url:String, ?delimiter:String = "?"):Dynamic {
|
|
var result:Dynamic = {}
|
|
var tmp:String = url == null ? null : delimiter == "" ? url : url.split(delimiter)[1];
|
|
if (tmp != null) {
|
|
var tmpArr:Array<String> = tmp.split("&");
|
|
for (item in tmpArr) {
|
|
var itemArr:Array<String> = item.split("=");
|
|
Reflect.setField(result, itemArr[0], itemArr[1]);
|
|
}
|
|
result;
|
|
}
|
|
return result;
|
|
}
|
|
|
|
public static function mergeParams(params1:Map<String, String>, params2:Map<String, String>):Void {
|
|
for (key in params2.keys()) {
|
|
params1.set(key, params2.get(key));
|
|
}
|
|
}
|
|
} |