【问题标题】:Is that possible to use IF statement to get data from database and save it into String?是否可以使用 IF 语句从数据库中获取数据并将其保存到字符串中?
【发布时间】:2022-01-05 01:09:27
【问题描述】:

我想从tbl_jadwal 获取一些记录并将其保存到我的 laravel 中的字符串中。 这是我的代码,

$get_time = if (now()->isMonday()) {
            return DB::table('tbl_jadwal')->where('Hari', 'Senin')->value('Jadwal_masuk');
        } else if(now()->isSaturday()) { {
            return DB::table('tbl_jadwal')->where('Hari', 'Sabtu')->value('Jadwal_masuk');
        };

$time = $get_time;

但我收到消息语法错误,意外标记“if”,有没有其他方法可以解决这个问题?

【问题讨论】:

  • 你可以在你的语句里面使用一个函数。
  • 您不能将 if 语句分配给变量。

标签: laravel database string web


【解决方案1】:

一般来说你可以做到:

if (now()->isMonday()) {
    $get_time = DB::table('tbl_jadwal')->where('Hari', 'Senin')->value('Jadwal_masuk');
} else if(now()->isSaturday()) { {
    $get_time = DB::table('tbl_jadwal')->where('Hari', 'Sabtu')->value('Jadwal_masuk');
}
// Caution: $get_time may not be defined here
return $get_time??null;

你也可以使用when:

if (!now()->isSaturday() && !now()->isMonday()) { return null; }
    
return DB::table('tbl_jadwal')
  ->when(now()->isSaturday(), function ($q) { $q->where('Hari', 'Sabtu'); )
  ->when(now()->isMonday(), function ($q) { $q->where('Hari', 'Senin'); )
  ->value('Jadwal_masuk');

但是 carbon 也支持本地化,因此您可以让 now()->dayName 根据您的语言环境实际返回日期名称。

【讨论】:

  • 它的工作,谢谢先生。
猜你喜欢
  • 1970-01-01
  • 2016-11-15
  • 1970-01-01
  • 2014-12-12
  • 1970-01-01
  • 2012-04-21
  • 2020-03-03
  • 2022-08-18
  • 2015-06-03
相关资源
最近更新 更多