Пример #1
0
 /**
  * @param $nsCode namespace code
  * @param $decoded decoded page name. URL-decoded, using normalized spaces (not underscores), first letter uppercase.
  */
 public function __construct($nsCode, $decoded)
 {
     PhpUtil::assertInteger($nsCode, 'namespace code');
     if (!isset(self::$nsNames[$nsCode])) {
         throw new \InvalidArgumentException('unknown namespace code ' . $nsCode);
     }
     PhpUtil::assertString($decoded, 'page name');
     if (strlen($decoded) === 0) {
         throw new WikiParserException('page name must not be empty');
     }
     $this->nsCode = $nsCode;
     $this->nsName = self::$nsNames[$nsCode][0];
     $this->encoded = WikiUtil::wikiEncode($decoded);
     // re-decode to make sure name is normalized
     $this->decoded = WikiUtil::wikiDecode($this->encoded);
 }