我怎樣才能獲得的年,月&日分別(Note.this列有多個行。) 數據庫中的數據例如: 2015年8月13日, 2016- 07-31, 2016年8月2日從列從動態數據庫訪問一個數據有很多行
public function index()
{
//scholar_birthday - column name
$bday = Scholar::select('scholar_birthday')->get();
dd($bday);
$date = explode("-", $bday);
$d = $date[2];
$m = $date[1];
$y = $date[0];
<!--Static Data-->
//$year = '1991';
//$month = '12';
//$day = '19';
$howOldAmI = Carbon::createFromDate($y,$m,$d)->age;
dd($howOldAmI,$bday);
return view('pages.Index');
}
此代碼不能正常工作!希望每個人都可以修復這個邏輯我。
更新代碼:使用錯誤 「未知或壞時區([{」 scholar_birthday 「:」 1221年2月13日00:00:00 「},」 數據庫:擡頭| scholar_birthday | 值| 2015-08- 13 |
什麼毛病我的數據,或者有事情做與設置爲在phpMyAdmin或laravel時區 下面是代碼:試錯
public function index()
{
$bday = Scholar::select('scholar_birthday')->get();
$format = 'y/m/d';
$year = 'y';
$month = 'm';
$day = 'd';
$data = Carbon::createFromDate($year, $month, $day,$bday);
dd($data);
return view('pages.Index');
}
}
Update.Dob,獨立的數據庫只? 。我的實際工作是來自其他databse的學者模型。這就是我如何保存從我的blade.php 日期輸入注意:我已經保存了t他在單個列中將輸入數據記錄到數據庫中。是正確的還是需要將y/m/d保存在單獨的列中?但這是我的輸入「<input type="date" name="date" class="form-control" >"
。因此,這將保存爲單列。我應用你的代碼訪問數據?
$date = $request->input('date');
$dob = new Dob;
$dateOfBirth = Carbon::createFromFormat('Y-m-d',$date,'UTC')
->tz('UTC')
->toDateString(); // '2014-02-21'
$dob->date_of_birth = $dateOfBirth;
$dob->save();
return view('pages.Ngo.AddDob');
//這個控制器
$bday = Dob::select('date_of_birth')->get();
的問題是在這裏...
$age = Carbon::createFromDate(,,,$bday)->age;
什麼,我想在這裏實現的是讓age.What是不對的code here:
$today = Carbon::now()->toDateString();
$bday = Dob::select('date_of_birth')->get();
$age = $bday->diff($today)->age;
error: 爲foreach提供的參數無效() dd($ age);
/數據庫表/
id
2
date_of_birth
2016-12-07
created_at
2016-12-04 12:47:59
updated_at
2016-12-04 12:47:59
是否將scholar_birthday創建爲日期對象? –
@Scott Plunkett -Sir,我把我的數據庫設置爲varchar作爲日期。因爲它是一個字符串。我想按照我想要的單獨訪問。它可以是年份或月份,但在我的情況下,我想要y/m/d,所以我可以動態地將它放入參數Carbon :: createFromDate($ y,$ m,$ d)。我測試過靜態數據並且它的工作正常。我想要這個scholar_birthday的所有行列它的,因爲我想比較,並從當前日期得到差異獲得age.This年齡然後是比較找到匹配的年齡,我想檢索。 – Chee
對不起,我沒有關注。你是否在下面嘗試我的答案? –