حساسية الأحرف عند البحث في لارافيل - Laravel Run Case Sensitive Query Tutorial

حساسية الأحرف عند البحث في لارافيل - Laravel Run Case Sensitive Query Tutorial

2024-10-18 وقت القراءه : 1 دقائق

في هذه المقالة، سنرى كيف يمكن تنفيذ إستعلام، على أن يتم أخذ حالة الأحرف (كبيرة، صغيره)، يمعنى أن نتائج البحث يجب ان تطابق الـ pattern الذي تم إرسالة.

للتوضيح :

  • Palestine, palestine, PALESTINE ستكون متشابهه، إذا لا نريد أن نراعي حالة الأحرف.
  • Palestine, palestine, PALESTINE لن تكون متشابهه، إذا تم مراعاة حالة الأحرف.


لفرض أن لدينا قاعدة البيانات التالية عن الدول

ونريد أن نبحث في الحقل name عن إسم الدولة، مثلا نريد أن نبحث عن palestine

إذا قمنا بإستخدام الجملة التالية

$country= Country::select("id", "name")
    ->where("name", 'palestine')
    ->get();

كما نلاحظ أن الدولة فلسطين مسجلة في قاعدة البيانات بأن الحرف الأول Capital، لكن سوف يتم إرجاعها 

[
    {
        "id": 1,
        "name": "Palestine"
    }
]

مع العلم أن كلمة البحث تبدأ بحرف small.

لكن إن أردنا أن يتم تطبيق حساسية الأحرف case sensitive فيجب علينا إستخدام mysql binary

$country= Country::select("id", "name")
    ->where(Country::raw("BINARY name"), 'palestine')
    ->get();

 هنا سيتم إرجاع مصفوفة فارغة، لأنه تم تفعيل حساسية الأحرف case sensitive


التعليقات
زائر
منذ 3 سنوات

طيب بالنسبة للعربي الالف بهمزة ومن غير والتاء والهاء هل ليهم حل

زائر
منذ 3 سنوات

ربنا يباركلك دايماً في كل درس بتعلم منك حاجة جديدة أستمر وربنا يزيدك

إضافة تعليق
Loading...