For example:
class AClass { /* *@param BClass $obj */ public function someFunction(BClass $obj) { } } Here, everything is clear to me in the class ACF property someFunction only an instance of the class BClass can get into or here's an example
function(BInterface $obj){}//аналогично, только унаследованный от интерфейса And please note that we only substitute the values there when we call a function or make an instance of the class, but what this record form is - I don’t understand it - decipher please - I never specified $ e anywhere, and generally I can write any variable instead of $ e
catch(Exception $e) {}