Controller laravel中的数组

时间:2017-03-31 01:26:44

标签: php arrays laravel laravel-5.2

有人可以帮我修改我的代码吗?我有这个概念,但不知道如何将它们写入控制器中的代码

$temp=DB::table('temporary')->get();

    //dd($temp);
    if($temp['tahun'] < 'current year'){
        $temp['tahun'] = 'current year';
        $temp['nomor'] = 'nomor+1';
        $keluhan->no_laporan = $temp['nomor'];
    } else {
        $temp['nomor']++;
    }

条件: 我的临时表有2个属性tahun(value = 2017 int)和nomor(value = 1 int) 我想检查一下我的tahun&lt;今年(实际年份,idk代码,所以我写当前的年份)然后我的tahun成为=这个年复一年和我的提名者++(从它的价值第一个+1)我怎么把他们变成laravel代码?请帮忙,谢谢伙计

2 个答案:

答案 0 :(得分:2)

DB :: table('temporary') - &gt; - &gt; get()将返回一个集合。从您的代码中,您似乎正在使用单列,您可以使用first()。

对于日期,可以使用简单的date()函数。

$temp=DB::table('temporary')->first();

//dd($temp);
if($temp->tahun < date("Y")){
    $temp->tahun = date("Y");
    $temp->nomor++;
    $keluhan->no_laporan = $temp->nomor;
} else {
    $temp->nomor++;
}

答案 1 :(得分:1)

$temp=DB::table('temporary')->get();将获得一个集合。所以你必须循环。并使用Carbon获取日期。

foreach($temp as $temp)
{
  if($temp->tahun < Carbon\Carbon::now()->year){
    {
      $temp->tahun=Carbon\Carbon::now()->year;
      $temp->nomor=$temp->nomor+1;
      $temp->update();
     }
   else
    {
       $temp->nomor=$temp->nomor+1;
       $temp->update();
    }
}