تا چهل + پنج درصد تخفیف بر روی محصولات آموزشی در تخفیف های روز به روز توسینسو
23:59:59
مهدی محب الطاهر

بررسی رشته ورودی با مقدار مشابه ذخیره شده در دیتابیس در زبان PHP

سلام . وقت دوستان بخیر

من یک جدول دارم با حدود 5000 رکورد سوال و بهش هر روز سوالات جدیدی اضافه می کنم.

(پایگاه داده MYSQL هست و زبان برنامه هم PHP)
گاهی پیش میاد که سوال تکراری وارد میشه
این سوال تکراری دو حالت داره : رشته ورودی کاملا با رشته ذخیره شده یک سان هست / رشته ورودی با رشته ذخیره شده تشابه دارد.

الان میام رشته ای که به عنوان سوال وارد میشه رو به روش زیر بررسی می کنم :
اول کل جدول رو Select میزنم بعد میام داخل حلقه زیر اطلاعات رو بررسی می کنم:

 

 

<?php
$New_Q = "متن سوال جدید";
$Q_Selects = array();  // آرایه سوالات موجود در جدول 

foreach ($Q_Selects as $Q_Select){
    similar_text(mb_strtolower($Q_Select['Question'],"utf-8"),mb_strtolower($New_Q,"utf-8"),$output);
    if($output > 70){
        echo "سوال مشابه یافت شد.";
        echo "<br>".$Q_Select['Question'];
    }
}

 

کارم رو راه می ندازه اما حجم داده ها که داره میره بالا با توجه به طولانی بودن متن سوالات فرایند پاسخ گرفتن من خیلی زمان می بره

دوستان راهکار بهتری سراغ دارن ؟

لذت یادگیری با توسینسو
به عنوان شخصی که مدت هاست از سایت توسینسو استفاده می کنم باید بگم که واقعاً یکی از بهترین مرجع ها برای ارتقاء دانش شخصی هست. دوره های سایت، راهکارها و مطالب، همگی عالی هستند.

سلام به شما دوست عزیز.

برای این که سرعت شما افت نداشته باشه می تونید یک ایندکس full-text روی ستون سوال قرار بدید که وقتی که سرچ می کنید کار بسیار سریع تر خواهد بود. این ایندکس در مورد جستجوی رشته ها و مقایسه رشته ها به کار می رود. مطالعه بیشتر در این لینک.

کانال تلگرام، اینستاگرام، توییتر: @mehdiadeli9

ممنون جناب عادلی عزیز اما بحث من اینجا هست که بع علت بررسی مقادیر داده سمت کد php ناچار هستم کل جدول سوال رو Select بزنم. و در این صورت ایندکس بودن یا نبودنش فرقی برام فکر نمی کنم داشته باشه.

در حال حاضر من بیشتر نگران زمان پردازش اطلاعات در سمت اجرای دستور PHP هستم.

پاسخ شما
برای ارسال پاسخ خود وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره پاییزه می تونی امروز ارزونتر از فردا خرید کنی ....