for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace App\Http\Resources;
use Illuminate\Support\Str;
use Illuminate\Http\Resources\Json\Resource;
class PostResource extends Resource
{
/**
* Transform the resource into an array.
*
* @param \Illuminate\Http\Request
* @return array
*/
public function toArray($request)
return [
'id' => $this->id,
'url' => $this->url,
'url_edit' => route('backend.posts.edit', $this),
$this
this<App\Http\Resources\PostResource>
array
It seems like the type of the argument is not accepted by the function/method which you are calling.
In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.
We suggest to add an explicit type cast like in the following example:
function acceptsInteger($int) { } $x = '123'; // string "123" // Instead of acceptsInteger($x); // we recommend to use acceptsInteger((integer) $x);
'url_delete' => route('backend.posts.destroy', $this),
'title' => Str::words($this->title, 5),
'category' => $this->category->name,
'tags' => $this->tags->take(3)->implode('name', ', '),
'published_at' => $this->published_at->format('Y-m-d H:i'),
];
}
It seems like the type of the argument is not accepted by the function/method which you are calling.
In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.
We suggest to add an explicit type cast like in the following example: