猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
我可以将自定义类转换为刀片 Laravel 中的变量吗
我可以在 Laravel Blade 中做类似的事情吗:
@foreach($collection as (CustomClass) $object)
千万里不及你
浏览 98
回答 3
3回答
慕莱坞森
这是不可能的。由于 Blade 是一种 PHP 模板语言,你只能做 PHP 允许的事情……而且它不允许你在局部变量上强制转换类型。您只能键入提示函数参数和 - 在新发布的 PHP 7.4 中 - 类属性。你也可以给你的函数一个返回类型。PHP 7+:public function foo(string $bar): int{ return strlen($bar);}PHP 7.4+: protected int $count;当然,我的示例是使用标量类型(字符串、整数、浮点数、布尔值)制作的,但您完全可以在此处放置自定义类。public function logout(App\User $user){ //stuff}
0
0
0
青春有我
您在问题中提供的信息很少,但是由于您使用的是@foreach,因此您可以按以下方式进行类型转换,这应该可以工作:@foreach($collection as $object)@php($object = (object)$object)......@endforeach这应该允许您使用$object->item
0
0
0
月关宝盒
您可以使用Collection::whereInstanceOf()过滤掉任何不属于您想要的类的东西。 https://laravel.com/docs/5.8/collections#method-whereinstanceof@foreach($collection->whereInstanceOf(CustomClass) as $object)如果你想简单地出错,如果不是你的类,那么你可以比较集合的大小。但我建议在控制器中执行此操作:if ($collection->whereInstanceOf(CustomClass)->count() !== $collection->count()) { throw Exception();}
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
PHP
php如何把参数放在Http Request Heade????
1 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续