- Output for 5.3.0 - 5.3.22, 5.4.0 - 5.4.12
- Parse error: syntax error, unexpected ':', expecting ',' or ';' in IkXq2 on line 63
Process exited with code 255.
<?php
class Bijective {
/**
*
* @var string
*/
private $dictionary = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
/**
* CTOR
*/
public function __construct() {
$this->dictionary = str_split($this->dictionary);
}
/**
*
* @param int $i
* @return string
*/
public function encode($i) {
if ($i == 0)
return $this->dictionary[0];
$result = '';
$base = count($this->dictionary);
while ($i > 0) {
$result[] = $this->dictionary[($i % $base)];
$i = floor($i / $base);
}
$result = array_reverse($result);
return join("", $result);
}
/**
*
* @param string $input
* @return int
*/
public function decode($input) {
$i = 0;
$base = count($this->dictionary);
$input = str_split($input);
foreach ($input as $char) {
$pos = array_search($char, $this->dictionary);
$i = $i * $base + $pos;
}
return $i;
}
}
$b=new Bijective();
echo $b->decode('d5iskrr'):