URL関数

http_build_query

http_build_query(
 array|object $data,
 string $numeric_prefix = "",
 ?string $arg_separator = null,
 int $encoding_type = PHP_QUERY_RFC1738
): string

与えられた連想配列 (もしくは添字配列) から URL エンコードされたクエリ文字列を生成します。

$data = array(
    'name' => 'foo',
    'age' => 25,
    'division' => 'bar'
);

echo http_build_query($data);

//結果: name=foo&age=25&division=bar

parse_url(string $url, int $component = -1): int|string|array|null|false

URL の様々な構成要素のうち特定できるものに関して 連想配列にして返します。 連想配列に含まれる要素の値は、URLデコード されません。

$url = 'http://example.com/foo/?query_name=abc';
var_dump(parse_url( $url ));

//結果:
array(4) {
  ["scheme"]=>
  string(4) "http"
  ["host"]=>
  string(11) "example.com"
  ["path"]=>
  string(5) "/foo/"
  ["query"]=>
  string(9) "query_name=abc"
}

▽戻り値の配列に含まれる可能性のある要素
scheme host port user pass path query fragment(#以降)

rawurlencode(string $string): string

リンクを動的に作成する場合のURLエンコード。
空白を%20に変換する。
URL全体に使うものではない。URL全体に使うとコロン、スラッシュまで変換されてしまう。

$input = "コード 学習";
$output = rawurlencode( $input );
echo "https://example.com/{$output}";

//結果: https://example.com/%E3%82%B3%E3%83%BC%E3%83%89%20%E5%AD%A6%E7%BF%92

rawurldecode(string $string): string

URLエンコードされた文字列をデコードする。

urlencode(string $string): string

クエリー文字列クッキーで使用する。
空白を+に変換する。

//クエリー文字列をエンコードした後、URL全体をHTMLエスケープする
$query = urlencode($value);
$link = "https://example.com/index.php?var={$query}";

//XSS対策としてHTMLエスケープする
echo 'リンク';

urldecode(string $string): string

URLエンコードされた文字列をデコードする。

get_meta_tags(string $filename, bool $use_include_path = false): array|false

filename 内の各行をパースし タグ内の情報を配列として返します。 でパースを終了します。

$tags = get_meta_tags('http://www.example.com/');