この記事は、laravel に関する関連知識を提供します。Laravel チームは、部分的なキューのフォージェリ、freezeTime() 補助関数、ストレージのassertDirectoryEmpty() アサーションなどを含むバージョン 9.5 をリリースしました。助けるために。
[関連する推奨事項: laravel ビデオ ]
Laravel チームがバージョン 9.5 をリリースしました。これには、部分的なキューのフォージェリ、freezeTime () ヘルパーが含まれています関数、ストレージのassertDirectoryEmpty () アサーション、assertJsonPath () のクロージャーなど:
コレクションの Implode メソッドのコールバック サポート
@Lito は、Collect::implode() コールバックのサポートを簡素化するために貢献しました。 ->map()->implode() 呼び出し:
// 之前<br/>{{ $user->cities->map(fn ($city) => $city->name.' ('.$city->state->name.')')->implode(', ') }}<br/>// 使用回调 <br/>{{ $user->cities->implode(fn ($city) => $city->name.' ('.$city->state->name.')', ', ') }}<br/>
Storage Fake を使用して空のディレクトリをアサート
Mark Beech は Storage::fake () を使用して貢献しました。空のディレクトリをアサートします:
// 9.5 版本之前<br/>$this->assertEmpty(Storage::disk('temp')->allFiles('/foo'));<br/>// +9.5<br/>Storage::disk('temp')->assertDirectoryEmpty('/foo');<br/>
ディレクトリ内にファイルがなく、他のサブディレクトリのみがある場合、他のフォルダ/ファイルが含まれているため、アサーションは失敗します。プル リクエストのディスカッションの例を次に示します。
Storage::fake('temp');<br/>Storage::disk('temp')->put('/foo/bar.txt', 'string');<br/>Storage::disk('temp')->assertDirectoryEmpty('/'); // 失败<br/>
JSON アサーション "assertJsonPath ()" がクロージャを受け入れるようになりました
Fabien Villepinte は、後方互換性のある割り込み機能を使用せずに、assertJsonPath にクロージャを渡すことに貢献しました。
上記の例は文字列バージョンを使用することでより単純に見えますが、パス アサーションに関するより複雑なロジックが必要な場合は、クロージャを使用できるようになりました。 部分的なキューのフェイクTaylor Otwell は、テスト対象のキューへの部分的なフェイクを提供しました:$response = TestResponse::fromBaseResponse(new Response([<br/> 'data' => ['foo' => 'bar'],<br/>]));<br/>$response->assertJsonPath('data.foo', 'bar');<br/>$response->assertJsonPath('data.foo', fn ($value) => $value === 'bar');<br/>「スルー」モデルを作成する新しい方法Hafez Divandari は、hasOneThrough または hasManyThrough メソッド全体をオーバーライドすることなく、新しい「スルー」モデルを作成する機能に貢献しました。
Queue::fake([JobsToFake::class, /* ... */]);<br/>新しい文字列ラップ ヘルパー関数Markus Hebenstreit は、wrap() 文字列ヘルパー関数を貢献しました。プル リクエストの説明からの使用例を次に示します。
// Define a `newThroughInstance` method<br/>protected function newThroughInstance($resource)<br/>{<br/> return (new \App\Models\ExampleEntity)->setTable($resource);<br/>}<br/>テスト用のフリーズ時間ヘルパー関数@Italo は、freezeTime() ヘルパー関数を提供しました。これは、テスト時間の現在時刻をフリーズします。テストメソッド:
Str:wrap('value')->wrap('"');<br/>Str::of('value')->wrap('"');<br/>str('value')->wrap('"');<br/>// 输出: "value"<br/>Str:wrap('is', 'This ', ' me!');<br/>Str::of('is')->wrap('This ', ' me!');<br/>str('is')->wrap('This ', ' me!');<br/>// 输出: This is me!<br/>freezeTime() メソッドは、次の糖衣構文です:
public function test_something()<br/>{<br/> $this->freezeTime();<br/> // 或将时间设置为日期的当前秒<br/> // 没有亚秒级精度。<br/> $this->freezeSecond();<br/>}<br/>Http::beforeSending () で呼び出し可能なオブジェクトを受け入れられるようにしますDries Vints ヘルプHttp::beforeSending() メソッドで呼び出し可能なクラスだけでなく、呼び出し可能なオブジェクトを受け入れるため。次の例は、「配列上のメンバー関数 __invoke() の呼び出し」を取得する代わりに機能するようになります:
$this->travelTo(Carbon::now());<br/>リリース ノート 新機能と更新の完全なリストは以下で確認できます。 GitHub で 9.4.0 と 9.5.0 の違いを確認してください。次のリリース ノートは、変更ログから直接抜粋したものです:
9.5.0 バージョン
New
- ##追加 implode コレクション メソッドのコールバック サポートを追加しました。 (
#41405)
- Illuminate/Filesystem/FilesystemAdapter::assertDirectoryEmpty() を追加しました。 (
#41398)
- SesTransport の電子メール「メタデータ」を実装します。 (
#41422)
- assertPath () がクロージャを受け入れるようにします。 (
#41409)
- コレクションのoperatorForWhereの呼び出し可能サポートを追加しました。 (
- キューの偽造を追加しました。 (
#41425)
schedule:test コマンドに –name オプションを追加しました。 (#41439)
は、Illuminate/Database/Eloquent/Concerns/HasRelationships::newEveryoneThroughInstance() を定義します。 (#41444)
Illuminate/Support/Stringable::wrap() を追加しました (#41455)
テスト用補助関数「freezeTime」を追加しました。 (#41460)
Illuminate/Http/Client/PendingRequest.php::runBeforeSendingCallbacks() で beforeSending 呼び出しの使用を許可します。 (#41489)
修正
非推奨の警告から名前またはドメインをフィルターする際の修正ルート:リストの場合。 (#41421)
URL が空のステータス コードを返した場合の HTTP::pool 応答を修正しました。 (#41412)
Illuminate/Session/Middleware/AuthenticateSession.php のリコール名の解決を修正しました。 (#41429)
/Illuminate/Session/Middleware/AuthenticateSession.php で使用されているガード インスタンスを修正しました (#41447 )
- ##Route::view () と Route::redirect () を非表示にするための、route:list –excel-vendor を修正しました (
#41465)
変更
- \Illuminate\Database\Eloquent\Factories\Factory に接続プロパティの空のタイプを追加します。 (
#41418)
#GeneratorCommand の予約名を更新 ( - #41441# #再設計PHPのartisanのschedule:listコマンド。 ( #41445
- )拡張された雄弁な高次プロキシ プロパティ。 ( #41449
- )名前付きパラメータを動的ローカル スコープに渡すことができます。 ( #41478
- )タグが合格しても、Illuminate/Encryption/Encrypter.php でサポートされていない場合は例外をスローします。 ( #41479
- )コンポーザーベンダーフォルダーがプロジェクトフォルダーにない場合、Update PackageManifest::$vendorPath がそのケースに合わせて初期化されます。 ( #41463
- )[関連する推奨事項: laravel ビデオチュートリアル
以上がLaravel 9.5 バージョンの新しい追加、修正、変更点をまとめます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

LaravelまたはPythonの選択は、プロジェクトの要件に依存します。1)Webアプリケーションをすばやく開発し、ORMと認証システムを使用する必要がある場合は、Laravelを選択します。 2)データ分析、機械学習、または科学的コンピューティングが含まれる場合は、Pythonを選択します。

LaravelはWebアプリケーションを迅速に構築するのに適しており、Pythonは柔軟性と汎用性を必要とするプロジェクトに適しています。 1)Laravelは、PHPエコシステムに適したORMやルーティングなどの豊富な機能を提供します。 2)Pythonは、簡潔な構文と強力なライブラリエコシステムで知られており、Web開発やデータサイエンスなどのフィールドに適しています。

LaravelとPHPを使用して、動的なWebサイトを効率的に楽しく作成します。 1)LaravelはMVCアーキテクチャに従い、ブレードテンプレートエンジンはHTMLの書き込みを簡素化します。 2)ルーティングシステムと要求処理メカニズムにより、URL定義とユーザー入力処理が簡単になります。 3)Eloquentormはデータベース操作を簡素化します。 4)データベースの移行、CRUD操作、ブレードテンプレートの使用は、ブログシステムの例を介して実証されています。 5)Laravelは、強力なユーザー認証と承認機能を提供します。 6)デバッグスキルには、ロギングシステムと職人ツールの使用が含まれます。 7)パフォーマンスの最適化の提案には、怠zyなロードとキャッシュが含まれます。

Laravelは、ブレードテンプレートエンジン、Eloquentorm、Artisan Tools、Laravelmixを介してフルスタック開発を実現します。1。ブレードは、フロントエンド開発を簡素化します。 2. Eloquentはデータベース操作を簡素化します。 3。職人は開発効率を向上させます。 4。Laravelmixは、フロントエンドリソースを管理します。

Laravelは、MVCアーキテクチャモデルに従い、豊富なツールと機能を提供し、Web開発プロセスを簡素化する最新のPHPベースのフレームワークです。 1)データベースインタラクション用のEloquentorm、2)高速コード生成のための職人コマンドラインインターフェイス、3)効率的なビュー開発のためのブレードテンプレートエンジン、4)URL構造を定義するための強力なルーティングシステム、5)ユーザー管理のための認証システム、6)リアルタイム機能のためのイベントリスニングとブロードキャスト、7)パフォーマンスを維持するためのパフォーマンスを維持します。

LaravelはWebアプリケーションを迅速に構築するのに適していますが、Pythonはより広い範囲のアプリケーションシナリオに適しています。 1.Laravelは、Web開発を簡素化するために、Eloquentorm、Bladeテンプレートエンジン、職人ツールを提供します。 2。Pythonは、その動的なタイプ、リッチ標準ライブラリ、サードパーティのエコシステムで知られており、Web開発、データサイエンス、その他の分野に適しています。

LaravelとPythonにはそれぞれ独自の利点があります。Laravelは、機能が豊富なWebアプリケーションを迅速に構築するのに適しており、Pythonはデータサイエンスと一般的なプログラミングの分野でうまく機能します。 1.Laravelは、最新のWebアプリケーションの構築に適したEloquentormおよびBladeテンプレートエンジンを提供します。 2。Pythonには豊富な標準的な図書館とサードパーティライブラリがあり、DjangoとFlaskのフレームワークはさまざまな開発ニーズを満たしています。

Laravelは、コード構造を明確にし、開発プロセスをより芸術的にすることができるため、選択する価値があります。 1)LaravelはPHPに基づいており、MVCアーキテクチャに従い、Web開発を簡素化します。 2)Eloquentorm、Artisan Tools、Bladeテンプレートなどのコア機能は、開発の優雅さと堅牢性を高めます。 3)ルーティング、コントローラー、モデル、ビューを通じて、開発者はアプリケーションを効率的に構築できます。 4)キューやイベントモニタリングなどの高度な機能により、アプリケーションのパフォーマンスがさらに向上します。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

WebStorm Mac版
便利なJavaScript開発ツール

ドリームウィーバー CS6
ビジュアル Web 開発ツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。
