lut 06
PHP oferuje fajną metodę którą można wykorzystać. Jest to __call() jest ona wywoływana gdy następuje próba wywołania nieistniejącej metody w klasie.
Dzięki niej możemy przechwycić takie żądanie do nieistniejącej akcji w klasie i przekierować ją na akcję istniejącą. Nasz kontroler może wyglądać następująco:
class IndexController extends Zend_Controller_Action
{
public function __call($method, $args)
{
if ('Action' == substr($method, -6)) {
return $this->_forward('index');
}
throw new Exception('Invalid method called on ProfileController');
}
public function indexAction()
{
// Główna akcja kontrolera
}
public function kontaktAction()
{
echo $this->_getParam("nr");
}
}