简单是一个将一组数据包汇集在一起的项目,可以快速,最低限度地与PHP一起使用。少更多!
要开始使用简单的命令:
$ composer create-project phpzm/simples或制作存储库白色大师的副本
$ git clone https://github.com/phpzm/simples.git < dir >
$ cd < dir >
$ rm .git
$ composer install到目前为止,您已经下载了基本体系结构,并且需要设置一些详细信息,以使用PHP网站或系统的Happy Basic功能外出。
我们将在下面将提到的两个设置可用的两个设置针对相同的URL: http://localhost:8080在启动任何服务器模式之前,请制作项目可用的.env示例文件的副本
$ composer run env:init创建与项目一起提供的示例文件的副本
$ composer run docker:init接下来,您可以使用用于运行容器或使用的命令
$ composer run docker:serve --timeout=0使用PHP随附的开发服务器使用以下命令
$ composer run php:serve --timeout=0一切顺利,当访问URL http://localhost:8080时,您将已经看到我们的默认演示页面
好的,应该使用的URL可以,但让我们概述她运行的情况。
在此文件夹中,您将找到您应用程序将要有的请求的唯一输入点。打开其中包含的index.php文件时,我们会找到与简单文件的第一个交互。除了PHP文件外,我们通常还会调用assets 。它们是用于改善应用程序资源可视化的图像,样式文件和功能。该文件夹将用于留下任何人可以访问的裸露文件。
该目录包含用于配置应用程序行为的PHP文件列表。在查看这些文件时,您会看到有一个称为env的函数被用来定义某些属性。此函数恢复.env中定义的值。
最终,我们到达了聚会发生的地方。 Simples随附正确的设置,使用此目录来咨询您将创建的文档。您可以做很多事情,我们将所有内容分为一部分。
它可以间接包含与资源组成有关的文件。它最初是配置的3个目录(电子邮件,Locales,View),但是您可以舒适地增长它。您可以在config/app.php文件中看到类似于下面的配置指令。基于示例,我们可以使用助手config('app.resources.root') ,即返回app/resources值,这就是简单找到其使用的功能的方式。
[config/app.php]
<?php
( . . . )
' resources ' => [
' root ' => ' app/resources ' ,
]
(...)我们将看到有关此部分views的更多信息及其对模板部分的使用。
这是使用路由的建议路径。它在config/route.php中进行了描述,您可以在其中输入将初始化以组合应用程序路由的文件数组。
[config/route.php]
<?php
( . . . )
' files ' => [
' app/routes/index.php '
]
(...)因此,当将http请求发送到public/index.php时,它将开始搜索app/routes/index.php文件中的路由。稍后,在“路线创建”部分中,我们将看到如何使用简单的方式以有组织的方式创建路线。
该文件夹通过composer.json上的配置直接与Composer autoloader有关
[composer.json]
(...)
"autoload": {
"psr-4": {
"App\": "app/src/"
}
}
(...)
也就是说,您将使用的标准名称空间是App ,该文件应在上述文件夹中。显然,您可以修改此问题。请注意,使用PSR-4约定使用专有namespace空间创建文档时,可以透明地使用它。我们将在“结构组成”部分中对此进行更详细的介绍。
作为指示初始路径的一种方式,我们建议该文件storage在项目的根源处,以维护无法向公共访问开放的文档。
vendor文件夹是由Composer自动创建的。它具有您的项目将使用和文件加载设置的依赖关系。默认情况下是在.gitignore文件中配置的,要被Git忽略
在app/config/route.php中,第一个路由(或第一个路由)的配置默认为默认值。
可以在路由文件中进行应用程序资源访问设置。命令可以直接写在文件的文件上(其中$路由器变量将出于范围的原因),也可以使用接收$路由器作为参数的闭合返回。
简单的路线
return function ( $ router ) {
$ router -> on ( ' GET ' , ' / ' , function () {
return ' Hello World! ' ;
});
}动态路线
return function ( $ router ) {
$ router -> get ( ' /:controller/:method ' , function ( $ controller , $ method ) {
return ' Hello World! ' ;
});
}rota群
return function ( $ router ) {
// lista com arquivos de rota
$ router -> group ( ' GET ' , ' /site ' , [ ' more/files/routes.php ' , ' more/files/site.php ' ]);
// pasta que contém arquivos de rotas
$ router -> group ( ' * ' , ' /api ' , ' api/routes ' );
}与控制器交互的路线
return function ( $ router ) {
$ router -> post ( ' /client/save ' , ' NamespaceClientController@save ' );
$ router -> resource ( ' client ' , ' NamespaceClientController ' );
} $router->resource将创建:
| 动词 | 小路 | 行动 | 路线名称 |
|---|---|---|---|
| 得到 | /route | 指数 | route.Index |
| 得到 | /route/create | 创造 | 路线。创建 |
| 得到 | /route/{id} | 展示 | 路线。展示 |
| 得到 | /route/{id}/edit | 编辑 | 路线 |
| 邮政 | /route | 立体 | 路线。商店 |
| 放/补丁 | /route/{id} | 更新 | 路线 |
| 删除 | /route/{id} | 破坏 | 路线 |