Laravel是一款Web應(yīng)用程序框架,如果您需要開發(fā)新的web程序就可以部署這款框架,結(jié)合PHP
和Composer等開發(fā)功能就可以幫助用戶開始編輯程序;現(xiàn)在很多遠程控制系統(tǒng)都是通過web工作的,在瀏覽器輸入web地址就可以進入到控制系統(tǒng),通過這款Laravel框架就可以快速部署程序內(nèi)容,使用軟件提供的路由組件、中間件、控制器、數(shù)據(jù)庫、安全組件、請求組件、回應(yīng)組件就可以部署相關(guān)的程序功能模塊,用戶只需要閱讀官方提供的文檔或者是視頻資源就可以快速學(xué)習(xí)Laravel框架使用方法,需要就可以下載使用!
漸進式框架
我們喜歡稱 Laravel 為“漸進式”框架。我們的意思是 Laravel 與你一起成長。如果你只是邁出 Web 開發(fā)的第一步,Laravel 龐大的文檔、指南和視頻教程庫將幫助你學(xué)習(xí)技巧,而不會不知所措。
如果你是一名高級開發(fā)人員,Laravel 為你提供了強大的依賴注入、單元測試、隊列、實時事件等工具。Laravel 已針對構(gòu)建專業(yè)的 Web 應(yīng)用程序進行了微調(diào),并準備好處理企業(yè)工作負載。
可擴展的框架
Laravel 具有令人難以置信的可擴展性。由于 PHP 的擴展友好特性和 Laravel 對 Redis 等快速分布式緩存系統(tǒng)的內(nèi)置支持,使用 Laravel 進行水平擴展是輕而易舉的事。事實上,Laravel 應(yīng)用程序已經(jīng)很容易擴展為每月處理數(shù)億個請求。
需要極端縮放?Laravel Vapor等平臺允許您在 AWS 最新的無服務(wù)器技術(shù)上以幾乎無限的規(guī)模運行 Laravel 應(yīng)用程序。
社區(qū)框架
Laravel 結(jié)合了 PHP 生態(tài)系統(tǒng)中最好的包,以提供最強大且對開發(fā)人員友好的框架。此外,來自世界各地的數(shù)千名才華橫溢的開發(fā)人員為該框架做出了貢獻
Laravel 是一個具有表現(xiàn)力、優(yōu)雅語法的 Web 應(yīng)用程序框架。我們相信開發(fā)必須是一種令人愉快的、創(chuàng)造性的體驗,才能真正實現(xiàn)。Laravel 試圖通過簡化大多數(shù) Web 項目中使用的常見任務(wù)來減輕開發(fā)的痛苦,例如:
簡單、快速的路由引擎。
強大的依賴注入容器。
用于會話和緩存存儲的多個后端。
與數(shù)據(jù)庫無關(guān)的模式遷移。
強大的后臺作業(yè)處理。
實時事件廣播。
Laravel 易于訪問,但功能強大,提供了大型、健壯的應(yīng)用程序所需的工具。簡單、優(yōu)雅和創(chuàng)新的完美結(jié)合為您提供了構(gòu)建您負責(zé)的任何應(yīng)用程序所需的完整工具集。
你的第一個 Laravel 項目
在創(chuàng)建你的第一個 Laravel 項目之前,你應(yīng)該確保你的本地機器已經(jīng)安裝了 PHP 和Composer。如果你在 macOS 上開發(fā),PHP 和 Composer 可以通過Homebrew安裝。此外,我們建議安裝 Node 和 NPM。
安裝 PHP 和 Composer 后,您可以通過 Composercreate-project命令創(chuàng)建一個新的 Laravel 項目:
composer create-project laravel/laravel example-app
創(chuàng)建項目后,使用 Laravel 的 Artisan CLIserve命令啟動 Laravel 的本地開發(fā)服務(wù)器:
cd example-app
php artisan serve
一旦您啟動了 Artisan 開發(fā)服務(wù)器,您的應(yīng)用程序?qū)⒖梢栽谀?Web 瀏覽器中訪問http://localhost:8000。接下來,你就可以開始進入 Laravel 生態(tài)系統(tǒng)了
介紹
您的應(yīng)用程序執(zhí)行的某些數(shù)據(jù)檢索或處理任務(wù)可能會占用大量 CPU 資源或需要幾秒鐘才能完成。在這種情況下,通常會將檢索到的數(shù)據(jù)緩存一段時間,以便在后續(xù)請求相同數(shù)據(jù)時快速檢索到。緩存的數(shù)據(jù)通常存儲在非常快速的數(shù)據(jù)存儲中,例如Memcached或Redis。
值得慶幸的是,Laravel 為各種緩存后端提供了一個富有表現(xiàn)力的統(tǒng)一 API,允許您利用它們超快的數(shù)據(jù)檢索并加速您的 Web 應(yīng)用程序。
配置
您的應(yīng)用程序的緩存配置文件位于config/cache.php. 在此文件中,您可以指定您希望在整個應(yīng)用程序中默認使用的緩存驅(qū)動程序。Laravel 支持流行的緩存后端,如Memcached、Redis、DynamoDB和開箱即用的關(guān)系數(shù)據(jù)庫。此外,還可以使用基于文件的緩存驅(qū)動程序,而array“空”緩存驅(qū)動程序為您的自動化測試提供方便的緩存后端。
緩存配置文件還包含文件中記錄的各種其他選項,因此請務(wù)必閱讀這些選項。默認情況下,Laravel 配置為使用file緩存驅(qū)動程序,它將序列化的緩存對象存儲在服務(wù)器的文件系統(tǒng)上。對于較大的應(yīng)用程序,建議您使用更健壯的驅(qū)動程序,例如 Memcached 或 Redis。您甚至可以為同一個驅(qū)動程序配置多個緩存配置。
驅(qū)動程序先決條件
數(shù)據(jù)庫
使用database緩存驅(qū)動程序時,您需要設(shè)置一個表來包含緩存項。Schema您將找到下表的示例聲明:
您還可以使用php artisan cache:tableArtisan 命令生成具有正確架構(gòu)的遷移。
內(nèi)存緩存
使用 Memcached 驅(qū)動程序需要安裝Memcached PECL 包。您可以在config/cache.php配置文件中列出所有 Memcached 服務(wù)器。該文件已經(jīng)包含一個memcached.servers讓您入門的條目:
如果需要,您可以將host選項設(shè)置為 UNIX 套接字路徑。如果您這樣做,該port選項應(yīng)設(shè)置為0:
Redis
在將 Redis 緩存與 Laravel 一起使用之前,您需要通過 PECL 安裝 PhpRedis PHP 擴展或predis/predis通過 Composer 安裝包(~1.0)。Laravel Sail已經(jīng)包含了這個擴展。此外,Laravel Forge和Laravel Vapor等官方 Laravel 部署平臺默認安裝了 PhpRedis 擴展。
動態(tài)數(shù)據(jù)庫
在使用DynamoDB緩存驅(qū)動程序之前,您必須創(chuàng)建一個 DynamoDB 表來存儲所有緩存的數(shù)據(jù)。通常,此表應(yīng)命名為cache. stores.dynamodb.table但是,您應(yīng)該根據(jù)應(yīng)用程序cache配置文件中的配置值來命名表。
該表還應(yīng)該有一個字符串分區(qū)鍵,其名稱對應(yīng)stores.dynamodb.attributes.key于應(yīng)用程序cache配置文件中配置項的值。默認情況下,分區(qū)鍵應(yīng)命名為key.
緩存使用
獲取緩存實例
要獲取緩存存儲實例,您可以使用Cache外觀,我們將在本文檔中使用它。Facade 提供了對 Laravel 緩存合約底層實現(xiàn)的Cache方便、簡潔的訪問:
訪問多個緩存存儲
使用Cache外觀,您可以通過該store方法訪問各種緩存存儲。傳遞給該store方法的鍵應(yīng)對應(yīng)于配置文件中stores配置數(shù)組中列出的存儲之一:cache
從緩存中檢索項目
Cache外觀的方法get用于從緩存中檢索項目。如果緩存中不存在該項,null將被返回。如果您愿意,您可以將第二個參數(shù)傳遞給get方法,指定您希望在項目不存在時返回的默認值:
您甚至可以將閉包作為默認值傳遞。如果指定的項在緩存中不存在,則返回閉包的結(jié)果。傳遞閉包允許您推遲從數(shù)據(jù)庫或其他外部服務(wù)中檢索默認值:
檢查項目是否存在
該has方法可用于確定緩存中是否存在項目。false如果項目存在但其值為:此方法也將返回null:
遞增/遞減值
和方法可用于調(diào)整緩存中整數(shù)項的值increment。decrement這兩種方法都接受一個可選的第二個參數(shù),指示增加或減少項目值的數(shù)量:
檢索和存儲
有時您可能希望從緩存中檢索一個項目,但如果請求的項目不存在,也存儲一個默認值。例如,您可能希望從緩存中檢索所有用戶,或者,如果它們不存在,則從數(shù)據(jù)庫中檢索它們并將它們添加到緩存中。您可以使用以下Cache::remember方法執(zhí)行此操作:
如果緩存中不存在該項,remember則將執(zhí)行傳遞給該方法的閉包并將其結(jié)果放入緩存中。
您可以使用該rememberForever方法從緩存中檢索項目,或者如果它不存在則永久存儲它:
原文https://laravel.com/docs/9.x/releases
Laravel 9 通過引入對 Symfony 6.0 組件、Symfony Mailer、Flysystem 3.0 的支持、改進route:list的輸出、Laravel Scout 數(shù)據(jù)庫驅(qū)動程序、新的 Eloquent 訪問器/修改器語法、通過枚舉的隱式路由綁定以及各種其他錯誤修復(fù)和可用性改進。
改進的 Eloquent accessors / Mutators
Taylor Otwell貢獻了改進的 Eloquent 訪問器/修改器。
Laravel 9.x 提供了一種定義 Eloquent訪問器和修改器的新方法。在以前的 Laravel 版本中,定義訪問器和修改器的唯一方法是在模型上定義前綴方法,如下所示:
然而,在 Laravel 9.x 中,你可以使用一個單一的、無前綴的方法通過類型提示返回類型來定義訪問器和修改器IlluminateDatabaseEloquentCastsAttribute:
此外,這種定義訪問器的新方法將緩存屬性返回的對象值,就像自定義轉(zhuǎn)換類一樣:
Eloquent 現(xiàn)在允許您將屬性值轉(zhuǎn)換為 PHP “支持” Enums。為此,您可以在模型的$casts屬性數(shù)組中指定要強制轉(zhuǎn)換的屬性和枚舉:
一旦你在你的模型上定義了轉(zhuǎn)換,當(dāng)你與屬性交互時,指定的屬性將自動轉(zhuǎn)換為枚舉:
PHP 8.1 引入了對Enums的支持。Laravel 9.x 引入了在路由定義中鍵入提示 Enum 的能力,并且 Laravel 只會在該路由段是 URI 中的有效 Enum 值時調(diào)用該路由。否則,將自動返回 HTTP 404 響應(yīng)。例如,給定以下枚舉:
{category}您可以定義僅當(dāng)路由段為fruits或時才會調(diào)用的路由people。否則,將返回 HTTP 404 響應(yīng):
網(wǎng)友評論