[Laravel] Stringableクラスのオブジェクトをstringの文字列に変換する

カテゴリ: Laravel | タグ:

Laravelでは文字列操作のためのヘルパクラスとして、Strクラス(Illuminate\Support\Str)が用意されており、これのFluent版のメソッドを使うとメソッドチェーンで文字列を加工できます。

// $replacedはIlluminate\Support\Stringableクラスのオブジェクト
$replaced = Str::of('Laravel 6.x')->replace('6.x', '7.x');

ですが、これらのメソッドの戻り値はメソッドチェーンを実現する都合上、単なる文字列ではなくStringableクラスのオブジェクトを返します。

関数のタイプヒントなどの都合で文字列に変換したい場合は、下記のようにすれば良いです。

// $replacedは文字列
$replaced = Str::of('Laravel 6.x')->replace('6.x', '7.x')->__toString();
// $replacedは文字列
$replaced = (string)Str::of('Laravel 6.x')->replace('6.x', '7.x');

Amazonでおトクに買い物する方法
AmazonチャージでポイントGET


Amazonは買いもの前にAmazonギフト券をチャージしてポイントをゲットしないと損!

こちらもおススメ

コメントを残す

メールアドレスが公開されることはありません。