<?php
class User {
public static function __callStatic($name, $arguments) {
echo 'call ', __CLASS__, '::', $name, PHP_EOL;
return __CLASS__;
}
}
USER::take('email')::where(['id' => 1]);
class User2 {
public static function take($param) {
echo 'call ', __METHOD__, PHP_EOL;
return __CLASS__;
}
public static function where($param) {
echo 'call ', __METHOD__, PHP_EOL;
return __CLASS__;
}
}
USER2::take('email')::where(['id' => 1]);
PD9waHAKCmNsYXNzIFVzZXIgewoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBfX2NhbGxTdGF0aWMoJG5hbWUsICRhcmd1bWVudHMpIHsKCQllY2hvICdjYWxsICcsIF9fQ0xBU1NfXywgJzo6JywgJG5hbWUsIFBIUF9FT0w7CgkJcmV0dXJuIF9fQ0xBU1NfXzsKCX0KfQpVU0VSOjp0YWtlKCdlbWFpbCcpOjp3aGVyZShbJ2lkJyA9PiAxXSk7CgpjbGFzcyBVc2VyMiB7CglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHRha2UoJHBhcmFtKSB7CgkJZWNobyAnY2FsbCAnLCBfX01FVEhPRF9fLCBQSFBfRU9MOwoJCXJldHVybiBfX0NMQVNTX187Cgl9CglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHdoZXJlKCRwYXJhbSkgewoJCWVjaG8gJ2NhbGwgJywgX19NRVRIT0RfXywgUEhQX0VPTDsKCQlyZXR1cm4gX19DTEFTU19fOwoJfQp9ClVTRVIyOjp0YWtlKCdlbWFpbCcpOjp3aGVyZShbJ2lkJyA9PiAxXSk7