Php 创建自定义类结果集
我想从DB查询中获得自定义类实例:Php 创建自定义类结果集,php,mysql,laravel,Php,Mysql,Laravel,我想从DB查询中获得自定义类实例: class AEDHelper { static public function searchAED($position) { $var1 = $position['latitude']; $var2 = $position['longitude']; $var3 = $position['latitude']; $queryResults = DB::select(DB::raw("S
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对象。我在系统中使用的Transformer类需要一个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');
}
}
您要么需要更改实际获取DB结果的DB类的行为,要么需要实现将数组映射到响应器对象的一些新功能。如果对这些代码块一无所知,我们就无法为您提供更多帮助。我添加了我的Responder类。数据库由Laravel中的Elount访问。也需要模型:)对不起,这是哪个框架?