Requests_IRI::parse_iri() protected WP 1.0
Parse an IRI into scheme/authority/path/query/fragment segments
{} It's a method of the class: Requests_IRI{}
No Hooks.
Return
Array.
Usage
// protected - for code of main (parent) or child class $result = $this->parse_iri( $iri );
- $iri(string) (required)
Code of Requests_IRI::parse_iri() Requests IRI::parse iri WP 5.6
protected function parse_iri($iri) {
$iri = trim($iri, "\x20\x09\x0A\x0C\x0D");
$has_match = preg_match('/^((?P<scheme>[^:\/?#]+):)?(\/\/(?P<authority>[^\/?#]*))?(?P<path>[^?#]*)(\?(?P<query>[^#]*))?(#(?P<fragment>.*))?$/', $iri, $match);
if (!$has_match) {
throw new Requests_Exception('Cannot parse supplied IRI', 'iri.cannot_parse', $iri);
}
if ($match[1] === '') {
$match['scheme'] = null;
}
if (!isset($match[3]) || $match[3] === '') {
$match['authority'] = null;
}
if (!isset($match[5])) {
$match['path'] = '';
}
if (!isset($match[6]) || $match[6] === '') {
$match['query'] = null;
}
if (!isset($match[8]) || $match[8] === '') {
$match['fragment'] = null;
}
return $match;
}