簡單是一個將一組數據包匯集在一起的項目,可以快速,最低限度地與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} | 破壞 | 路線 |