TGViewer
| AmirHossein | | AmirHossein | @amirhdeveloper · 611 subscribers
Post #307 164
فصل چهار - مدل‌ها و Eloquent ORM

بخش دوم - مدل ها - قسمت پنجم (متدهای شرطی - 2)


1- متد whereBetween
برای فیلتر کردن رکوردهایی که مقدار یک ستون بین دو مقدار مشخص است، استفاده می‌شود.
$users = User::whereBetween('age', [18, 30])->get();

این کد تمام کاربرانی را که سن آن‌ها بین ۱۸ تا ۳۰ است، بازیابی می‌کند.

2- متد whereNotBetween
برای فیلتر کردن رکوردهایی که مقدار یک ستون خارج از محدوده دو مقدار مشخص است، استفاده می‌شود.
$users = User::whereNotBetween('age', [18, 30])->get();


3- متد whereBetweenColumns
برای فیلتر کردن رکوردهایی که مقدار یک ستون بین مقادیر دو ستون دیگر است، استفاده می‌شود.
$users = User::whereBetweenColumns('salary', ['min_salary', 'max_salary'])->get();

این کد تمام کاربرانی را که مقدار ستون salary آن‌ها بین مقادیر ستون‌های min_salary و max_salary است، بازیابی می‌کند.

4- متد whereNotBetweenColumns
برای فیلتر کردن رکوردهایی که مقدار یک ستون خارج از مقادیر دو ستون دیگر است، استفاده می‌شود.
$users = User::whereNotBetweenColumns('salary', ['min_salary', 'max_salary'])->get();


5- متد whereIn
برای فیلتر کردن رکوردهایی که مقدار ستون مشخص شده در یک لیست از مقادیر است، استفاده می‌شود.
$users = User::whereIn('id', [1, 2, 3])->get();

این کد تمام کاربرانی که شناسه آن‌ها یکی از ۱، ۲ یا ۳ است، بازیابی می‌کند.

6- متد whereNotIn
برای فیلتر کردن رکوردهایی که مقدار ستون مشخص شده در لیست مقادیر معین نیست، استفاده می‌شود.
$users = User::whereNotIn('id', [1, 2, 3])->get();


7- متد whereIntegerInRaw
مشابه whereIn است، اما از کوئری خام SQL برای مقایسه استفاده می‌کند و به طور خاص برای لیست های بزرگ اعداد مناسب است.
$users = User::whereIntegerInRaw('id', [1, 2, 3])->get();

این کد از SQL خام برای بازیابی تمام کاربرانی که شناسه آن‌ها ۱، ۲ یا ۳ است استفاده می‌کند.

8- متد whereIntegerNotInRaw
مشابه whereNotIn است، اما از کوئری خام SQL برای مقایسه استفاده می‌کند و به طور خاص برای لیست های بزرگ اعداد مناسب است.
$users = User::whereIntegerNotInRaw('id', [1, 2, 3])->get();


9- متد whereFullText
برای جستجوی تمام متن (full-text search) در ستون‌های خاص استفاده می‌شود. این متد در جداولی که از فیلدهای full-text پشتیبانی می‌کنند، کاربرد دارد.
$posts = Post::whereFullText('content', 'Laravel')->get();

این کد تمام پست‌هایی را که محتوای آن‌ها شامل کلمه 'Laravel' است، بازیابی می‌کند.

10- متد orWhereFullText
مشابه whereFullText است، اما برای افزودن شرط OR در جستجوی تمام متن استفاده می‌شود.
$posts = Post::where('status', 'published')->orWhereFullText('content', 'Laravel')->get();


11- متد whereJsonContains
برای جستجو در فیلدهای JSON استفاده می‌شود و رکوردهایی را که شامل مقدار مشخصی در فیلد JSON هستند، بازیابی می‌کند.
$users = User::whereJsonContains('options->languages', 'en')->get();

این کد تمام کاربرانی را که فیلد options->languages آن‌ها شامل مقدار 'en' است، بازیابی می‌کند.

12- متد whereJsonLength
برای بررسی طول یک فیلد JSON استفاده می‌شود.
$users = User::whereJsonLength('options->languages', 2)->get();

این کد تمام کاربرانی را که تعداد مقادیر موجود در فیلد options->languages آن‌ها برابر با ۲ است، بازیابی می‌کند.

13- متد whereLike
برای جستجوی رشته‌ای با استفاده از الگوی LIKE استفاده می‌شود.
$users = User::whereLike('name', 'John%')->get();

این کد تمام کاربرانی که نام آن‌ها با 'John' شروع می‌شود را بازیابی می‌کند.

14- متد orWhereLike
مشابه whereLike است، اما برای افزودن شرط OR در جستجوی رشته‌ای استفاده می‌شود.
$users = User::where('status', 'active')->orWhereLike('name', 'John%')->get();


15- متد whereNotLike
برای جستجوی رشته‌ای که با یک الگوی LIKE خاص تطابق نداشته باشد، استفاده می‌شود.
$users = User::whereNotLike('name', 'John%')->get();


16- متد orWhereNotLike
مشابه whereNotLike است، اما برای افزودن شرط OR در جستجوی رشته‌ای که با الگوی LIKE خاص تطابق ندارد، استفاده می‌شود.
$users = User::where('status', 'inactive')->orWhereNotLike('name', 'John%')->get();


▫️ 🟠
🔎 #laravel #لاراول #فصل_۴
💠 @AmirhDeveloper
.
  • 👍 1
  • 🔥 1
More from @amirhdeveloper
  1. Sep 30, 2026پکیج LaraGram Sentinel منتشر شد؛ یک پنل مانیتورینگ که هیچ چیزی از زیر دستش در نمی‌ره! تمام…
  2. Sep 23, 2026از امروز با کاهش شدید حاکرها مواجه میشیم
  3. Sep 19, 2026🔴 سوال سوم دو Region دارید: US-East و EU-West. کاربران در هر دو Region هستند. سیستم باید…
  4. Sep 19, 2026🟠 سوال دوم فرض کنید Service A به Service B درخواست می‌زند. B به‌دلیل overload، latency با…
  5. Sep 19, 2026🟢 سوال اول فرض کنید یک سرویس backend داریم که به PostgreSQL وصل می‌شود. تعداد requestها ن…
  6. Sep 19, 2026خیلی وقته پست‌های کانال فقط درمورد LaraGram بوده، وقتشه یکم جالب‌ترش کنیم اگر ممبرها هنوز…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →