【问题标题】:Fetch data from mysql database从mysql数据库中获取数据
【发布时间】:2017-12-07 20:51:12
【问题描述】:

如果这个数组有动态值,如何将数组传递到哪里?

foreach($value as  $v)
{
        echo $v->acc_pkey." ";
        $account = ledger::where('ledger_group', '=', 18)->orwhere('ledger_group', '=', $v->acc_pkey)->get();
} 

【问题讨论】:

  • 你想做什么?
  • 您能提供更多信息吗?
  • 这个问题怎么和@NileshKhisadiya 重复?
  • @NileshKhisadiya,这甚至不相关,它是为Laravel 而不是普通的mysql

标签: mysql laravel phpmyadmin


【解决方案1】:

如果我理解正确,您可以改用whereIn()。所以你可以:

$values = $value->pluck('acc_pkey')->toArray();
$account = ledger::whereIn('ledger_group', $values)->get();

或者是:

$account = ledger::where('ledger_group', '=', 18)
    ->orWhere(function($query) use ($values) {
        $query->whereIn('ledger_group', $values);
    })->get();

.....

我不知道您的真正想法,但我想这应该就足够了,除非此解决方案与您提供的示例中的 orWhere() 相悖。

【讨论】:

    【解决方案2】:

    我们不必将 '=' 放在 where,

     $whereData = [
          'ledger_group' => $v->acc_pkey,
        ];
        foreach($value as  $v) {
            echo $v->acc_pkey." ";
    
            $account = ledger::where('ledger_group',18)
                             ->orwhere($whereData)
                             ->get();
        } 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-26
      • 1970-01-01
      相关资源
      最近更新 更多