Laravel字符串帮助器返回对象

Laravel字符串帮助器返回对象,laravel,Laravel,当我这样做时: $test = Test::create([ 'email' => Str::of($this->email)->trim(), ]); dd($test->toArray()); 我明白了: array:14 [▼ "email" => Illuminate\Support\Stringable {#669 ▼ #value: "test@test.com" } ] 问题是,我正在将

当我这样做时:

$test = Test::create([
  'email' => Str::of($this->email)->trim(),
]);

dd($test->toArray());
我明白了:

array:14 [▼
  "email" => Illuminate\Support\Stringable {#669 ▼
    #value: "test@test.com"
  }
]
问题是,我正在将
$test
传递给一个事件,在该事件中,例如,当我在Slack通知中发送它时,
$event->test->email
为空。我猜是因为它是一个对象而不是字符串

我知道我可以使用PHPs
trim()
,但我有一些更复杂的Str帮助程序,我将它们链接起来,这非常有用。如何确保最终结果是一个字符串而不是
Stringable
的对象


最好是直接使用
Str::of($this->email)->trim()
,而不是像
public string$email这样的操作在事件中,因为如所示,我使用了多个参数,不想单独转换它们。

尝试使用
(string)
\u toString()
将其转换为
字符串

$test = Test::create([
  'email' => (string)Str::of($this->email)->trim(),
]);
$test = Test::create([
  'email' => Str::of($this->email)->trim()->__toString(),
]);