29 private $mCanonicalServer;
39 $this->mCanonicalServer = $canonicalServer;
41 $this->mServer = $server ?? $canonicalServer;
51 $parsed =
wfParseUrl( $this->mCanonicalServer );
53 return $parsed[
'host'];
57 return $this->mCanonicalServer;
72 private function getLocalUrl( $page, $fragmentId =
null ) {
73 $page =
wfUrlencode( str_replace(
' ',
'_', $page ) );
75 if ( is_string( $fragmentId ) && $fragmentId !==
'' ) {
79 return str_replace(
'$1', $page, $this->mPath );
91 return $this->mCanonicalServer . $this->getLocalUrl( $page, $fragmentId );
99 return $this->mCanonicalServer;
109 public function getUrl( $page, $fragmentId =
null ) {
123 return $this->mServer . $this->getLocalUrl( $page, $fragmentId );
127 class_alias( WikiReference::class,
'WikiReference' );
wfUrlencode( $s)
We want some things to be included as literal characters in our title URLs for prettiness,...
wfParseUrl( $url)
parse_url() work-alike, but non-broken.