ThinkPHP的A方法用於在內部實例化控制器,其調用格式為:
A('[項目://][分組/]模塊','控制器層名稱')
最簡單的用法:
$User = A('User');
表示實例化當前項目的UserAction控制器(這個控制器對應的文件位於Lib/Action/UserAction.class.php),如果采用了分組模式,並且要實例化另外一個Admin分組的控制器可以用:
$User = A('Admin/User');
也支持跨項目實例化(項目的目錄要保持同級)
$User = A('Admin://User');
表示實例化Admin項目下面的UserAction控制器
ThinkPHP的3.1版本增加了分層控制器的支持,所以還可以用A方法實例化其他的控制器,例如:
$User = A('User','Event);
實例化UserEvent控制器(對應的文件位於Lib/Event/UserEvent.class.php)。
實例化控制器後,就可以調用該控制器中的方法,不過需要注意的情況是,在跨項目調用的情況下,如果你的操作方法 有針對當前控制器的特殊變量操作,會有一些未知的問題,所以,一般來說,官方建議需要公共調用的控制器層單獨開發,不要有太多的依賴關系。