نمایش نتایج 1 تا 7 از 7

نام تاپیک: راهنمایی در رابطه با دریافت یک مقدار از آرایه اول و جست وجوی این مقدار در آرایه دوم

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    نهاوند (استان همدان)
    پست
    80

    راهنمایی در رابطه با دریافت یک مقدار از آرایه اول و جست وجوی این مقدار در آرایه دوم

    با سلام خدمت تمامی اساتید بزرگوار
    در رابطه با آرایه ها با مشکل مواجه شدم که از شما بزرگواران تقاضای کمک دارم.
    فرض کنید که ما دو تا آرایه داریم.
    آرایه های A و B با مقادیر زیر ساخته شده اند.
    با این دستور آرایه رو ساختم:


    $Array_A = array["Ali","Ahmad","Hasan","Hosein","Mohammad"]
    $Array_B = array["Ahmad","Hasan","Hosein"]


    حالا ما می خوایم مقادیری که توی آرایه A هست رو در کل آرایه B جست وجو کنیم و مقادیری که در آرایه اول وجود دارن اما در آرایه دوم موجود نیست رو در آرایه دیگری مثلا آرایه C ذخیره کنیم.
    من از تابع in_array و search_array استفاده کردم منتها هیچ چیزی رو اصلا ذخیره نمی کرد. انگار که همه ی مقادیر آرایه A در آرایه B موجوده. در حالی که اگه دقت کرده باشید در مثال بالا دو مقدار Ali و Mohammad که در آرایه A وجود دارند در آرایه B نیستن. که در پایان می خواستم این دو مقدار یعنی Ali و Mohammad در آرایه سوم ذخیره بشن.

    بنابراین از شما عزیزان خواهشمندم منو در این زمینه راهنمایی کنید.
    با تقدیم احترام.
    صداقت.

  2. #2
    کاربر دائمی
    تاریخ عضویت
    مهر 1394
    محل زندگی
    ایران
    پست
    323

    نقل قول: راهنمایی در رابطه با دریافت یک مقدار از آرایه اول و جست وجوی این مقدار در آرایه دوم

    سلام array_diff() بزن

    منبع :

    https://www.w3schools.com/php/func_array_diff.asp

  3. #3
    کاربر دائمی
    تاریخ عضویت
    مهر 1394
    محل زندگی
    ایران
    پست
    323

    نقل قول: راهنمایی در رابطه با دریافت یک مقدار از آرایه اول و جست وجوی این مقدار در آرایه دوم

    اگر میخواهی مشترکها رو بگیری با array_intersect()

    https://www.w3schools.com/php/func_array_intersect.asp

  4. #4
    کاربر تازه وارد
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    نهاوند (استان همدان)
    پست
    80

    نقل قول: راهنمایی در رابطه با دریافت یک مقدار از آرایه اول و جست وجوی این مقدار در آرایه دوم

    از پاسخ هایی که دادید سپاس گزارم.
    من از توابع بالا استفاده کردم. منتها اصلا جواب نمیده.
    امکانش هست زحمت کدش رو برام بکشید.
    من فایل ضمیمه رو براتون ارسال میکنم.
    احتمال میدم مقادیر موجود در آرایه شبیه هم نباشن.

    قراره کل مقادیر موجود در فایل csv با این آرایه که در زیر کدش رو قرار میدم مقایسه بشه و هر مقداری که در این دو آرایه با هم متفاوت هستن رو در بیاره و در آرایه ی سوم ذخیره کنه.
    ناگفته نمونه که فایل csv مورد نظر به صورت فایل فشرده در ضمیمه ی این پست قرار دادم.


    $Array_A = array["Ali","Ahmad","Hosein","Mohammad"]
    $Array_B = file("Data.csv");

    $Result=array_diff($Array_A, $Array_B);
    print_r(count($Result));


    با تقدیم احترام.
    صداقت
    فایل های ضمیمه فایل های ضمیمه

  5. #5
    کاربر تازه وارد
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    نهاوند (استان همدان)
    پست
    80

    نقل قول: راهنمایی در رابطه با دریافت یک مقدار از آرایه اول و جست وجوی این مقدار در آرایه دوم

    با سلام خدمت تمامی دوستان
    مشکل رو حل کردم اما یه مشکل دیگه دارم. در پست اولی که دادم آرایه اول ما 5 تا عنصر داره و آرایه ی دوم هم 3 تا عنصر.
    با استفاده از تابع array_diff تونستم مقادیری که بین دو آرایه مشترک نیستن رو در داخل آرایه ی سوم ذخیره کنم. که بالطبع 2 تا عنصر باقی می مونه که در آرایه ی اول وجود داره اما در آرایه ی دوم وجود نداره.
    وقتی که از تابع count استفاده می کنم میزنه آرایه ی جدید 2 تا عنصر داره که درسته.
    اما وقتی که از حلقه for استفاده می کنم باز هم مشکل دارم.
    شکل آرایه ای که به من میده اینه:

    Array ( [0] => Ali [4] => Mohammad [47])


    من برای نمایش محتویات این آرایه از حلقه for استفاده می کنم ولی فقط یک عنصر رو که همون اولی هست رو نمایش میده.
    فرض کنید که آرایه ی سوم به نام $Array_C ذخیره ش

    for ($i=0; $i<count($Array_C); $i++) {
    echo "$Array_C[$i] ."<br>";
    }

    وقتی این حلقه اجرا میشه فقط عنصر اول که Ali هست نمایش داده میشه و عنصر دوم که محمد هست نمایش داده نمیشه.
    حدس من بر این هست که حلقه for روی اندیس عناصر حساس باشه.
    من چه طور می تونم این اندیس ها رو نادیده بگیرم.
    لطفا راهنمایی کنید.
    با تشکر.

  6. #6
    کاربر تازه وارد
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    نهاوند (استان همدان)
    پست
    80

    نقل قول: راهنمایی در رابطه با دریافت یک مقدار از آرایه اول و جست وجوی این مقدار در آرایه دوم

    مشکلم با تابع foreach حل شد
    باز هم از راهنمایی هاتون سپاس گزارم

  7. #7
    کاربر دائمی
    تاریخ عضویت
    مهر 1394
    محل زندگی
    ایران
    پست
    323

    نقل قول: راهنمایی در رابطه با دریافت یک مقدار از آرایه اول و جست وجوی این مقدار در آرایه دوم

    توی همون for هم میتونستی با حلش کنی که البته شخصا foreach رو پیشنهاد میدم بهر حال اگر for رو اینجوری بزنی درست میشه

    for ($i=0; $i<=count($Array_C); $i++)

  8.  

تاپیک های مشابه

  1. پاسخ: 1
    آخرین پست: جمعه 06 اسفند 1389, 18:14 عصر
  2. سوال: آپلود دیتابیی برروی هاست
    نوشته شده توسط majnun در بخش ASP.NET Web Forms
    پاسخ: 9
    آخرین پست: پنج شنبه 18 آذر 1389, 22:18 عصر
  3. سوال: انتخاب رکوردهایی که جمع مقادیر آنها مساوی است با
    نوشته شده توسط فؤاد در بخش SQL Server
    پاسخ: 17
    آخرین پست: دوشنبه 31 خرداد 1389, 16:59 عصر
  4. آیکون برنامه روی فایل اجرایی ست نمی شه
    نوشته شده توسط binyaz2003 در بخش Foxpro
    پاسخ: 13
    آخرین پست: پنج شنبه 10 آذر 1384, 20:40 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •