In CakePHP ist es möglich, die genannte Funktion Zeichenfolge mit derCakePHP erhält Namen Aktion
$this->action
Syntax zu erhalten. Es gibt die Literalzeichenfolge des aufgerufenen Objekts zurück. Wenn die URL /do_this
lautet, wird do_this
zurückgegeben, und wenn es doThis
ist, wird doThis
zurückgegeben. Unabhängig vom tatsächlichen Namen der aufgerufenen Methode.
Was ich suche, ist auf der anderen Seite der tatsächliche Name der aufgerufenen Methode, unabhängig von der URL-Syntax.
Gibt es eine Möglichkeit, es herauszufinden?
Ich würde dies vorzugsweise in der beforeFilter
Methode tun können.
Es ist die Struktur der sauberen URL von CakePHP, dass, was auch immer Sie in URL schreiben, dass Aktion aufgerufen wird. zum Beispiel wird www.domain.com/x/y y Aktion in x-Controller aufrufen. Dies ist in Ihrer .htaccess-Datei definiert. –
Es würde helfen, wenn Sie das eigentliche Problem erklären würden, das Sie zu lösen versuchen, dh warum genau benötigen Sie den genauen Methodennamen? ps. Bitte geben Sie immer Ihre genaue CakePHP-Version an und markieren Sie Ihre Frage entsprechend! – ndm
Vielleicht könnten Sie die Aktion bekommen und dann 'if (method_exists ('doThis'))' für jeden möglichen Fall tun. Aber stimme mit ndm überein, wenn du deine Absicht erklärst, könnte es einen besseren Weg geben. (siehe auch 'function_exists') – Ross