php parse_url linux 解析问题

解析url函数parse_url()

(PHP 4, PHP 5, PHP 7)

parse_url — 解析 URL,返回其组成部分

mixed parse_url ( string $url [, int $component = -1 ] )

本函数解析一个 URL 并返回一个关联数组,包含在 URL 中出现的各种组成部分。

本函数不是用来验证给定 URL 的合法性的,只是将其分解为下面列出的部分。不完整的 URL 也被接受,parse_url()会尝试尽量正确地将其解析。

参数

 url:要解析的 URL。无效字符将使用 _ 来替换。

component:

指定 PHP_URL_SCHEME、 PHP_URL_HOST、 PHP_URL_PORT、 PHP_URL_USER、 PHP_URL_PASS、 PHP_URL_PATHPHP_URL_QUERY 或 PHP_URL_FRAGMENT 的其中一个来获取 URL 中指定的部分的 string。 (除了指定为PHP_URL_PORT 后,将返回一个 integer 的值)。

 

 字段中出现了 [#] windows上可以正常解析 但是 linux 不能正常解析

 

 

返回值

对严重不合格的 URL,parse_url() 可能会返回 FALSE

如果省略了 component 参数,将返回一个关联数组 array,在目前至少会有一个元素在该数组中。数组中可能的键有以下几种:

  • scheme - 如 http
  • host
  • port
  • user
  • pass
  • path
  • query - 在问号 ? 之后
  • fragment - 在散列符号 # 之后

如果指定了 component 参数, parse_url() 返回一个 string (或在指定为 PHP_URL_PORT 时返回一个 integer)而不是array。如果 URL 中指定的组成部分不存在,将会返回 NULL

原文地址:https://www.cnblogs.com/simadongyang/p/8178198.html