Requests_IRI::to_uri()

最后更新于:2021-11-26 04:00:33

Requests_IRI::to_uri($string)

Convert an IRI to a URI (or parts thereof)

参数

(string|bool) (Required) IRI to convert (or false from get_iri)

响应

(string|false) URI if IRI is valid, false otherwise.

源文件

文件: gc-includes/Requests/IRI.php

	protected function to_uri($string) {
		if (!is_string($string)) {
			return false;
		}

		static $non_ascii;
		if (!$non_ascii) {
			$non_ascii = implode('', range("x80", "xFF"));
		}

		$position = 0;
		$strlen = strlen($string);
		while (($position += strcspn($string, $non_ascii, $position)) < $strlen) {
			$string = substr_replace($string, sprintf('%%%02X', ord($string[$position])), $position, 1);
			$position += 3;
			$strlen += 2;
		}

		return $string;
	}