<?php
class アニマルガール
{
protected $stack = [];
private final function __construct()
{}
public static function サンドスター()
{
$class_path = get_called_class();
return new $class_path();
}
public static function __callStatic($method, $arguments)
{
return ($instance ?? $instance = static::サンドスター())->$method();
}
public function __call($method, $arguments)
{
if (in_array($method, ['わーい', 'すごーい', 'たのしー'], true)) { $this->stack[] = $method;
} else {
$this->stack[] = sprintf('君は%sがとくいなフレンズなんだね!!', $method); echo implode(\PHP_EOL
, $this->stack), \PHP_EOL
; }
return $this;
}
}
アニマルガール::わーい()->すごーい()->たのしー()->クソリプ();
PD9waHAKCmNsYXNzIOOCouODi+ODnuODq+OCrOODvOODqwp7CgogICAgcHJvdGVjdGVkICRzdGFjayA9IFtdOwoKICAgIHByaXZhdGUgZmluYWwgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKQogICAge30KCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIOOCteODs+ODieOCueOCv+ODvCgpCiAgICB7CiAgICAgICAgJGNsYXNzX3BhdGggPSBnZXRfY2FsbGVkX2NsYXNzKCk7CiAgICAgICAgcmV0dXJuIG5ldyAkY2xhc3NfcGF0aCgpOwogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gX19jYWxsU3RhdGljKCRtZXRob2QsICRhcmd1bWVudHMpCiAgICB7CiAgICAgICAgcmV0dXJuICgkaW5zdGFuY2UgPz8gJGluc3RhbmNlID0gc3RhdGljOjrjgrXjg7Pjg4njgrnjgr/jg7woKSktPiRtZXRob2QoKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gX19jYWxsKCRtZXRob2QsICRhcmd1bWVudHMpCiAgICB7CiAgICAgICAgaWYgKGluX2FycmF5KCRtZXRob2QsIFsn44KP44O844GEJywgJ+OBmeOBlOODvOOBhCcsICfjgZ/jga7jgZfjg7wnXSwgdHJ1ZSkpIHsKICAgICAgICAgICAgJHRoaXMtPnN0YWNrW10gPSAkbWV0aG9kOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICR0aGlzLT5zdGFja1tdID0gc3ByaW50Zign5ZCb44GvJXPjgYzjgajjgY/jgYTjgarjg5Xjg6zjg7PjgrrjgarjgpPjgaDjga3vvIHvvIEnLCAkbWV0aG9kKTsKICAgICAgICAgICAgZWNobyBpbXBsb2RlKFxQSFBfRU9MLCAkdGhpcy0+c3RhY2spLCBcUEhQX0VPTDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICR0aGlzOwogICAgfQp9CgrjgqLjg4vjg57jg6vjgqzjg7zjg6s6OuOCj+ODvOOBhCgpLT7jgZnjgZTjg7zjgYQoKS0+44Gf44Gu44GX44O8KCktPuOCr+OCveODquODlygpOwo=