首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

解析url获取相关信息

今天开发sass管理后台时,遇到这样一个需求:商户在平台设置自己平台的url,平台需要针对当前url拼接平台给定的参数。

以前也经常遇到这类需要,但是总是忘记具体代码,今天我就总结一下吧!

PHP解析URL

在我的记忆中,PHP解析url时经常使用【pathinfo】函数,但是经常会遇到各种奇葩问题,所以今天我们使用【parse_url】来解析url。

最开始我想着参数不多就自己直接在用户设置的url后拼接参数,代码如下:

但是到了后期,发现商户设置的url中可能带有参数,此时代码就不能这么写了,否则就会出现两个【?】及重复的参数,于是自己封装了一个,完整代码如下:

其中【parse_url】函数是PHP内置函数,主要作用就是解析url,大致结果如下:

如果url只有域名和参数时,返回的结果中没有【path】这个字段。如果url中没有参数,返回的结果中也没有query这个字段

从上面的结果可以看出query没有结构化,我们需要将query进行解析成数组的形式,解析代码如下:

到此PHP解析url的代码就已经说明清楚了,希望正在看文章的你有所帮助

JS解析URL

js解析URL代码与PHP大致相同,只是将【parse_url】换成【new URL】对象,完整代码如下:

注意:query可能为空,所以上述代码判断了参数是否存在

网上有很多人使用【urlObj.query】的方式获取请求参数,本人尝试过,很多时候是没有这个属性字段的,所以我使用了【urlObj.search】获取请求参数

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OzWB22jnMZzFlqXCWSRhhSCQ0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券