【发布时间】:2018-09-02 08:52:50
【问题描述】:
【问题讨论】:
-
你得再解释一下你的问题
标签: laravel oop reusability code-reuse
【问题讨论】:
标签: laravel oop reusability code-reuse
你可以简单地将这个 sn-p 放入一个函数中,比如buildExamData:
protected function buildExamData($examdata) {
$examIdsNesting = [];
foreach ($examdata as $examdatum) {
$examIdsNesting[] = array(
'Exam Name' => $examdatum->Name,
'Exam Code' => $examdatum->ExamCode,
'Exam Details' => $examdatum->Details,
'Exam Owner' => $examdatum->Owner,
);
}
return $examIdsNesting;
}
然后每次您想执行此操作时,只需致电buildExamData() 例如:
public function GetListOfExams(Request $request)
{
//select Name, ExamCode,Details, Owner, from exams where owner = Owner and status = 1;
$owner = $request->get('owner'); //get this from GET request
$status = 1; //it is intialized here
$examdata = Exam::select('Name', 'ExamCode', 'Details', 'Owner')->where(
array(
'Owner' => $owner,
'status'=> $status
)
)->get();
return $examdata->isEmpty()
? response()->json('Exam not found for this Owner', 404)
: response()->json($this->buildExamData($examdata), 200);
}
请注意,我对
buildExamData()函数做了一点重构,所以你不需要array_push()Ps:如果你不想暴露你的源代码,我可以删除部分代码,只留下解释
【讨论】: