我希望从数据库查询中获取自定义类实例:
class AEDHelper {
static public function searchAED($position) {
$var1 = $position['latitude'];
$var2 = $position['longitude'];
$var3 = $position['latitude'];
$queryResults = DB::select(DB::raw("SELECT * FROM TABLE"));
$aedResults[] = new AED;
foreach($queryResults as $result) {
var_dump($result);
$aed = $result;
$aedResults[] = $aed;
}
return $aedResults;
}
}
但我只收到stdClass对象。我在系统中使用的transformerClass需要一个Responder对象。如何从查询中获取这些对象?我试图在循环结果集时创建它们。但这不起作用。什么是正确的方法?
响应者类
<?php
namespace App\Classes;
use Illuminate\Database\Eloquent\Model;
use App\Events\EventGenerator;
use App\Events\ResponderWasAlarmed;
class Responder extends Model {
use EventGenerator;
protected $table = 'responders';
protected $fillable = ['user_id', 'latitude', 'longitude', 'created_at', 'updated_at'];
public $timestamps = true;
public function set($data) {
foreach ($data as $key => $value) {
$this->{$key} = $value;
}
return $this;
}
public function incidents() {
return $this->belongsTo('App\Classes\Incident');
}
}
答案 0 :(得分:0)
您需要更改实际获取数据库结果的数据库类的行为,或者需要实现一些将数组映射到Responder对象的新功能。在不了解这些代码块的情况下,我们真的无法为您提供更多帮助。