CS174
Chris Pollett
Oct 19, 2020
class A{} class B extends A {}
interface MyInterface { function method1($a, $b); }
class C implements MyInterfaceA, MyInterfaceB {}
class A {function foo(){} } class B extends A {function foo(){} }
class A {final function foo() {} /* can't override*/ }
namespace TheNameOfMyNamespace; // code for namespace class A { //code for class A } function foo() { }This declaration with the same name can be at the top of multiple files if you would like to group the contents of these files into the same namespace.
namespace TheNameOfMyNamespace\MySubNameSpace; //code
namespace D { // code for D } namespace E { // code for E }
namespace N; function foo() { //some code } foo(); //assume N namespace.
M\foo(); /*in context of above we are in N namespace already, so M\foo() means the foo() in N\M namespace. */ \N\M\foo(); \time(); //time function in the global (default) namespace.
use A\B\C; //rather that type $a= new A\B\C(); you can type $a= new C(); use D\E\F as G; //rather than typing D\E\F\goo(); could type G\goo();
namespace seekquarry\yioop;
namespace seekquarry\yioop\models;
Which of the following statements is true?
if (file_exists(__DIR__."/../../vendor/autoload.php")) { require_once __DIR__."/../../vendor/autoload.php"; } else { spl_autoload_register(function ($class) { // project-specific namespace prefix $prefix = 'seekquarry\\yioop\\tests'; // does the class use the namespace prefix? $len = strlen($prefix); if (strncmp($prefix, $class, $len) !== 0) { $prefix = 'seekquarry\\yioop'; $len = strlen($prefix); // no, move to the next registered autoloader if (strncmp($prefix, $class, $len) !== 0) { return; } else { $check_dirs = [WORK_DIRECTORY . "/app", BASE_DIR]; } } else { $check_dirs = [PARENT_DIR . "/tests"]; } // get the relative class name $relative_class = substr($class, $len); // use forward-slashes, add ./php $unixify_class_name = "/".str_replace('\\', '/', $relative_class) . '.php'; foreach($check_dirs as $dir) { $file = $dir . $unixify_class_name; if (file_exists($file)) { require $file; break; } } }); }