<?php
class Book {
function __construct() { }
public static function withDescriptors($isNotOrmObject, $isArray, $isScalar) {
$instance = new self();
// initialization here
return $instance;
}
}
$isNotORMobject = new stdclass;
$isArray = [1, 2, 'skip a few', 99, 100];
$isScalar = 42;
$book = Book::withDescriptors($isNotORMobject, $isArray, $isScalar);
echo "see?\n";
PD9waHAKZXJyb3JfcmVwb3J0aW5nKEVfQUxMKTsKCmNsYXNzIEJvb2sgewogIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkgeyB9CgogIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gd2l0aERlc2NyaXB0b3JzKCRpc05vdE9ybU9iamVjdCwgJGlzQXJyYXksICRpc1NjYWxhcikgewogICAgJGluc3RhbmNlID0gbmV3IHNlbGYoKTsKICAgIC8vIGluaXRpYWxpemF0aW9uIGhlcmUKICAgIHJldHVybiAkaW5zdGFuY2U7CiAgfQp9CgokaXNOb3RPUk1vYmplY3QgPSBuZXcgc3RkY2xhc3M7CiRpc0FycmF5ID0gWzEsIDIsICdza2lwIGEgZmV3JywgOTksIDEwMF07CiRpc1NjYWxhciA9IDQyOwoKJGJvb2sgPSBCb29rOjp3aXRoRGVzY3JpcHRvcnMoJGlzTm90T1JNb2JqZWN0LCAkaXNBcnJheSwgJGlzU2NhbGFyKTsKCmVjaG8gInNlZT9cbiI7