Test if unicode characters can be used as method / variable name
The build was successful.
Details
The build was successful.
Details
This commit is contained in:
parent
ff6a7012a4
commit
dd239530d8
|
@ -0,0 +1,43 @@
|
|||
class Main {
|
||||
private $概要 = "AerScript Interpreter";
|
||||
|
||||
public function __construct() {
|
||||
$this->ダウンロード();
|
||||
var_dump($this->概要);
|
||||
var_dump($this->isUTF8('hello'));
|
||||
var_dump($this->isUTF8("すが、基本的な使い方は単純です。かしながら使い方を身につけていきましょう"));
|
||||
}
|
||||
|
||||
private function ダウンロード(){
|
||||
echo $this->概要 . "\n";
|
||||
}
|
||||
|
||||
private function isUTF8($str) {
|
||||
$b = 0;
|
||||
$c = 0;
|
||||
$bits = 0;
|
||||
$len = strlen($str);
|
||||
for($i = 0; $i < $len; $i++) {
|
||||
$c = ord($str[$i]);
|
||||
if($c >= 128) {
|
||||
if(($c >= 254)) return false;
|
||||
elseif($c >= 252) $bits=6;
|
||||
elseif($c >= 248) $bits=5;
|
||||
elseif($c >= 240) $bits=4;
|
||||
elseif($c >= 224) $bits=3;
|
||||
elseif($c >= 192) $bits=2;
|
||||
else return false;
|
||||
if(($i+$bits) > $len) return false;
|
||||
while($bits > 1) {
|
||||
$i++;
|
||||
$b=ord($str[$i]);
|
||||
if($b < 128 || $b > 191) return false;
|
||||
$bits--;
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
new Main();
|
|
@ -0,0 +1,4 @@
|
|||
AerScript Interpreter
|
||||
string(21 'AerScript Interpreter')
|
||||
bool(TRUE)
|
||||
bool(TRUE)
|
Loading…
Reference in New Issue