<?php
class outer{
private $privateProp = 'Private';
protected $protectedProp = 'Protected';
public $publicProp = 'Public';
public function inner(){
return new class() extends outer{
public function returnProtected(){
return $this->protectedProp;
}
public function returnPrivate(){
return $this->privateProp;
}
};
}
}
$test = (new outer)->inner()->returnPrivate();
var_dump($test);