Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [inny][Laravel 5.1] Database builder - zagnieżdżanie, grupowanie warunków where
zaajcu
post
Post #1





Grupa: Zarejestrowani
Postów: 206
Pomógł: 3
Dołączył: 18.08.2011
Skąd: Chrzanów

Ostrzeżenie: (0%)
-----


Cześć.
Mam mały problem z frameworkiem Laravel.

Zagnieżdżanie (grupowanie) warunków w where wygląda następująco:

  1. DB::table('users')
  2. ->where('name', '=', 'John')
  3. ->orWhere(function ($query) {
  4. $query->where('votes', '>', 100)
  5. ->where('title', '<>', 'Admin');
  6. })
  7. ->get();


I teraz mój problem:

  1. $votes = 100;
  2.  
  3. DB::table('users')
  4. ->where('name', '=', 'John')
  5. ->orWhere(function ($query) {
  6. $query->where('votes', '>', $votes)
  7. ->where('title', '<>', 'Admin');
  8. })
  9. ->get();


Niestety ale to rozwiązanie nie przechodzi, muszę jakimś sposobem przekazać zmienną $votes do funkcji, bo inaczej php wypluwa błąd.

Jak to można zrobić?

Ten post edytował zaajcu 8.12.2015, 09:57:49
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


To akurat nie ma związku z Laravelem jako takim, ot podstawy użycia funkcji anonimowych:
  1. orWhere(function($query) use($votes) {
  2. ...
  3. })
Go to the top of the page
+Quote Post
zaajcu
post
Post #3





Grupa: Zarejestrowani
Postów: 206
Pomógł: 3
Dołączył: 18.08.2011
Skąd: Chrzanów

Ostrzeżenie: (0%)
-----


No tak. Czas chyba odświeżyć podstawy (IMG:style_emoticons/default/wink.gif)

Dziękuję bardzo (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 17.02.2026 - 12:32