J'utilise Laravel comme framework de développement PHP depuis longtemps, mais il y a certains endroits qui ne sont pas couverts dans les documents officiels, et je les oublie de temps en temps . J'ai récemment fait une organisation simple et j'ai pris des notes à ce sujet.
1. Route::controller Nommage de l'itinéraire :
L'utilisation de Route::controller peut réduire beaucoup de travail de personnalisation de l'itinéraire, mais il est parfois nécessaire de nommer un itinéraire spécifique pour une utilisation facile, mais la méthode Route::controller spécifie par lots les routes pour toutes les méthodes d'un contrôleur. Comment doit-il être nommé ? Vous pouvez utiliser le troisième paramètre dans controller($uri, $controller, $names = array()). Il s'agit d'un tableau. La clé du tableau est la méthode et la valeur du tableau est le nom.
Le code est le suivant :
// 该函数的签名: public function controller($uri, $controller, $names = array()) // 不命名一般使用: Route::controller('admin', 'AdminController'); // 需要对其中的部分方法命名的话: Route::controller('admin', 'AdminController', array( 'getIndex' => 'admin.index', 'getLogin' => 'admin.login', 'postLogin' => 'admin.login' ));
Il est recommandé d'étudier "tutoriel vidéo Laravel"
2 Déterminer le fonctionnement actuel. environnement basé sur des variables système
La méthode par défaut du système pour déterminer s'il s'agit d'un environnement local consiste à spécifier un ensemble de noms d'hôtes comme environnement local dans le tableau 'local'. Par exemple, si vous effectuez du développement. sur un ordinateur de bureau ou un Macbook, vous devez ajouter les deux noms d'hôte. Je pense que c'est très difficile de tout noter. Il a été modifié pour juger basé sur $_SERVER['LARAVEL_ENV'], afin que je puisse définir la variable d'environnement de 'LARAVEL_ENV' dans toutes les machines de développement avec la valeur 'local', afin que la machine de développement la reconnaisse automatiquement comme ' l'environnement local, et la « production » dans d'autres cas.
Le code est le suivant :
// 默认的写法是根据主机名判断是否本地环境 $env = $app->detectEnvironment(array( 'local' => array('homestead'); )); // 修改为先判断系统变量是否指定,没有才判断主机名 $env = $app->detectEnvironment(function(){ $_env = getenv('LARAVEL_ENV') ? getenv('LARAVEL_ENV') : array( 'local' => array('homestead') ); return $_env; }); // 这实际是去读取 $_SERVER['LARAVEL_ENV'] 的值 // 在 Apache 中,可以用 SetEnv 设置, // 在 Nginx 中,可以用 fastcgi_param 设置
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!