这段代码:
$translation = Translation::where('language_id', 2)
->whereNotNull('data->navigation_login')
->select('data->navigation_login as navigation_login')
->first()
->toArray();
dd($translation);
Run Code Online (Sandbox Code Playgroud)
产生这个结果:
array(1) {["navigation_login"]=> string(7) ""Login"" }
问题是登录字符串周围的额外双引号: ""Login""
我怎样才能消除这种情况?
如果我在没有选择的情况下运行 aboe 代码:
$translation = Translation::where('language_id', 2)
->whereNotNull('data->navigation_login')
->first()
->toArray();
dd($translation);
Run Code Online (Sandbox Code Playgroud)
没有双引号:
["data"]=>
array(3) {
["navigation_login"]=>
string(5) "Login"
["navigation_order"]=>
string(5) "Order"
["navigation_registration"]=>
string(7) "Sign up"
}
Run Code Online (Sandbox Code Playgroud)
这是模型的详细信息:
...
class Translation extends Model {
protected $casts = [
'data' => 'array',
];
...
Run Code Online (Sandbox Code Playgroud)
这是架构详细信息:
...
$table->json('data')->nullable();
...
Run Code Online (Sandbox Code Playgroud) 我的网络主机在 php 中禁用了proc_open功能,我无法再发送电子邮件。
我收到此错误日志:
> proc_open() has been disabled for security reasons
Run Code Online (Sandbox Code Playgroud)
我使用 Laravel 默认的 Swiftmailer。我能做什么?