<?php
+
namespace Cubist\Util;
-class PHP {
- public static function getFileDeclaring($object) {
- $reflected = new \ReflectionClass($object);
- return $reflected->getFileName();
- }
+class PHP
+{
+ public static function getFileDeclaring($object)
+ {
+ $reflected = new \ReflectionClass($object);
+ return $reflected->getFileName();
+ }
+
+ public static function neverStop($ignoreUserAbort = true)
+ {
+ set_time_limit(0);
+ if ($ignoreUserAbort) {
+ ignore_user_abort(true);
+ }
+ }
- public static function neverStop($ignoreUserAbort = true) {
- set_time_limit(0);
- if ($ignoreUserAbort) {
- ignore_user_abort(true);
- }
- }
+ public static function instanciateClassInFile($file)
+ {
+ $classes = get_declared_classes();
+ include $file;
+ $diff = array_diff(get_declared_classes(), $classes);
+ $class = reset($diff);
+ return new $class();
+ }
}