CLI 已停止工作,if isset inside a foreach, using laravel
CLI has stopped working, with if isset inside a foreach, using laravel
所以我真的必须在 foreach 中做一个 if isset 但每次我加载 url,windows 给我 CLI 已停止工作 报告,然后我的 artisan 发球接近。
这是我的控制器
public function nilairapor($id){
$mapel = DB::table('view_ket')
->where('id_isikelas', $id)
->where('id_tahun', $this->tahun)
->where('id_semester', $this->semester)->groupBy('namamapel')->get();
foreach ($mapel as $getid) {
if(isset(DB::table('view_sikap')->where('id_isikelas', $id)->where('id_mapel', $getid->id_mapel)->where('id_tahun', $this->tahun)->where('id_semester', $this->semester)->first())){
$nobserv = DB::table('view_sikap')
->where('id_isikelas', $id)
->where('id_mapel', $getid->id_mapel)
->where('namanilai', 'Nilai Observasi')
->where('id_tahun', $this->tahun)
->where('id_semester', $this->semester)->first()->nilai;
$nds = DB::table('view_sikap')
->where('id_isikelas', $id)
->where('id_mapel', $getid->id_mapel)
->where('namanilai', 'Nilai Diri Sendiri')
->where('id_tahun', $this->tahun)
->where('id_semester', $this->semester)->first()->nilai;
$nateman = DB::table('view_sikap')
->where('id_isikelas', $id)
->where('id_mapel', $getid->id_mapel)
->where('namanilai', 'Nilai Antar Teman')
->where('id_tahun', $this->tahun)
->where('id_semester', $this->semester)->first()->nilai;
$njurnal = DB::table('view_sikap')
->where('id_isikelas', $id)
->where('id_mapel', $getid->id_mapel)
->where('namanilai', 'Nilai Jurnal')
->where('id_tahun', $this->tahun)
->where('id_semester', $this->semester)->first()->nilai;
$nasikap = ($nobserv + $nds + $nateman + $njurnal) / 4;
}else{
$nasikap = 0;
}
echo $nasikap;
}
}
我正在使用 windows 10 和 PHP 5.6.3
祝你有个美好的一天:)
有很多调试方法...
首先 检查您的日志以找出问题实际发生的位置。 Laravel 日志在 /storage/logs 下。它肯定会告诉您错误发生的位置。
其次为什么使用isset
进行数据库查询?而是使用严格比较
if (DB::table('view_sikap')->,,,->first() !== null) {
最后 如果您的错误仍然存在,请考虑分享更多关于您系统的信息:OS、配置文件、PHP 版本等
所以我真的必须在 foreach 中做一个 if isset 但每次我加载 url,windows 给我 CLI 已停止工作 报告,然后我的 artisan 发球接近。
这是我的控制器
public function nilairapor($id){
$mapel = DB::table('view_ket')
->where('id_isikelas', $id)
->where('id_tahun', $this->tahun)
->where('id_semester', $this->semester)->groupBy('namamapel')->get();
foreach ($mapel as $getid) {
if(isset(DB::table('view_sikap')->where('id_isikelas', $id)->where('id_mapel', $getid->id_mapel)->where('id_tahun', $this->tahun)->where('id_semester', $this->semester)->first())){
$nobserv = DB::table('view_sikap')
->where('id_isikelas', $id)
->where('id_mapel', $getid->id_mapel)
->where('namanilai', 'Nilai Observasi')
->where('id_tahun', $this->tahun)
->where('id_semester', $this->semester)->first()->nilai;
$nds = DB::table('view_sikap')
->where('id_isikelas', $id)
->where('id_mapel', $getid->id_mapel)
->where('namanilai', 'Nilai Diri Sendiri')
->where('id_tahun', $this->tahun)
->where('id_semester', $this->semester)->first()->nilai;
$nateman = DB::table('view_sikap')
->where('id_isikelas', $id)
->where('id_mapel', $getid->id_mapel)
->where('namanilai', 'Nilai Antar Teman')
->where('id_tahun', $this->tahun)
->where('id_semester', $this->semester)->first()->nilai;
$njurnal = DB::table('view_sikap')
->where('id_isikelas', $id)
->where('id_mapel', $getid->id_mapel)
->where('namanilai', 'Nilai Jurnal')
->where('id_tahun', $this->tahun)
->where('id_semester', $this->semester)->first()->nilai;
$nasikap = ($nobserv + $nds + $nateman + $njurnal) / 4;
}else{
$nasikap = 0;
}
echo $nasikap;
}
}
我正在使用 windows 10 和 PHP 5.6.3 祝你有个美好的一天:)
有很多调试方法...
首先 检查您的日志以找出问题实际发生的位置。 Laravel 日志在 /storage/logs 下。它肯定会告诉您错误发生的位置。
其次为什么使用isset
进行数据库查询?而是使用严格比较
if (DB::table('view_sikap')->,,,->first() !== null) {
最后 如果您的错误仍然存在,请考虑分享更多关于您系统的信息:OS、配置文件、PHP 版本等