javascript与php地址url解析函数
admin
2023-06-13 14:22:24
0

一、javascript:

  1. 代码:
    /*
    @desc:url解析函数
    @author  []
    @param url 要查询的url
    @return ret 解析后的对象
    */
    function parseurl(url){
    var reg = /(?:([A-Za-z]+):)?(\/{0,3})?(?:(.*):(.*)@)?([0-9.\-A-Za-z]+)(?::(\d+))?(?:\/([^?#]*))?(?:\?([^#]*))?(?:#(.*))?/
    var res = reg.exec(url)
    var scheme = (res[1])?res[1]:'http'
    var user = (res[3])?res[3]:''
    var pass = (res[4])?res[4]:''
    var host = (res[5])?res[5]:''
    var port = (res[6])?res[6]:''
    var path = (res[7])?res[7]:''
    var query = (res[8])?res[8]:''
    var fragment = (res[9])?res[9]:''
    var ret = {
        scheme:scheme,
        user:user,
        pass:pass,
        host:host,
        port:port,
        path:path,
        query:query,
        fragment:fragment
    }
    return ret
    }
  2. 测试:
    var url = "https://user:pass@www.baidu.com:80/a/b/?name=lee&sex=male#id";
    var ret = parseurl(url)
    console.log(ret)
  3. 输出:
    { scheme: 'https',
    user: 'user',
    pass: 'pass',
    host: 'www.baidu.com',
    port: '80',
    path: 'a/b/',
    query: 'name=lee&sex=male',
    fragment: 'id' }

    二、php:

  4. 代码(自带):
    parse_url()
  5. 测试:
  6. 输出:
    array(8) {
    ["scheme"]=>
    string(4) "http"
    ["host"]=>
    string(13) "www.baidu.com"
    ["port"]=>
    int(80)
    ["user"]=>
    string(4) "user"
    ["pass"]=>
    string(4) "pass"
    ["path"]=>
    string(4) "/a/b"
    ["query"]=>
    string(17) "name=lee&sex=male"
    ["fragment"]=>
    string(2) "id"
    }

相关内容

热门资讯

“中国消费者不再仰望西方文化,... 江西南昌一家律师事务所的合伙人李毛崽在开了多年的奔驰和宝马后,买了一辆国产豪华电动车;老铺黄金在设计...
36分!北京家庭新能源车指标入... 5月26日,北京市机动车调控管理办公室发布消息,公布家庭新能源小客车指标的积分排序入围名单,以及个人...
中国将如何支持外企投资中国、深... 【大河财立方消息】5月26日,国新办举行新闻发布会,请商务部副部长鄢东、山东省副省长温暖,商务部国际...
资金筹措像“化缘” 谁该为公益... 救援人员转运跌落悬崖的“驴友”救援人员用装备固定伤员救援人员搜救受困人员救援人员进行高空索降4月26...
涉广东、广西两省区,中央生态环... 第三轮第六批中央生态环境保护督察5月26日集中通报广东和广西两省区典型案例。广东省惠州阳江等地海洋生...
马英九为何缺席记者会?金溥聪回... 据中评社5月25日报道,马英九基金会指控前执行长萧旭岑、王光慈涉违反财政纪律,调查小组24日表示,无...
坚决打好打赢“三夏”攻坚战丨粮... 5月24日,许昌市建安区陈曹乡的一片麦田里,一名农技人员正蹲在田垄间,用手指轻轻托起一穗即将成熟的麦...
抢学 ——张庄村与十八洞村结对... 三夏时节,中原大地麦浪泛黄。田野里,成袋的大蒜整齐码放,处处是抢收抢种的身影。一个“抢”字,是兰考农...
坚决打好打赢“三夏”攻坚战丨凝... 5月22日,温县黄庄镇林李庄村的连片麦田里,沉甸甸的麦穗在微风中起伏,散发出阵阵麦香。温县农业农村局...
豫疆万里情丨从“铝”途到“晶”... 【开栏的话】从黄河之畔到天山脚下,跨越三千里山河,有一种情谊叫“援疆”。第十一批对口援疆工作启动以来...