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

نام تاپیک: یونیک کردن مقدار ها بر اساس اسم در ارایه ای که عناصر آن آبجکت هستند

  1. #1

    یونیک کردن مقدار ها بر اساس اسم در ارایه ای که عناصر آن آبجکت هستند

    سلام من یه آرایه دارم که عناصر اون آبجکت هست مثل این



    array (size=99)
    0 =>
    object(WP_Term)[12786]
    public 'term_id' => int 189
    public 'name' => string '1500' (length=4)
    public 'slug' => string '1500' (length=4)
    public 'term_group' => int 0
    public 'term_taxonomy_id' => int 189
    public 'taxonomy' => string 'product_cat' (length=11)
    public 'description' => string '' (length=0)
    public 'parent' => int 151
    public 'count' => int 1
    public 'filter' => string 'raw' (length=3)
    public 'meta_value' => null
    public 'cat_ID' => int 189
    public 'category_count' => int 1
    public 'category_description' => string '' (length=0)
    public 'cat_name' => string '1500' (length=4)
    public 'category_nicename' => string '1500' (length=4)
    public 'category_parent' => int 151
    1 =>
    object(WP_Term)[12785]
    public 'term_id' => int 190
    public 'name' => string '1500' (length=4)
    public 'slug' => string '1500' (length=4)
    public 'term_group' => int 0
    public 'term_taxonomy_id' => int 190
    public 'taxonomy' => string 'product_cat' (length=11)
    public 'description' => string '' (length=0)
    public 'parent' => int 151
    public 'count' => int 1
    public 'filter' => string 'raw' (length=3)
    public 'meta_value' => null
    public 'cat_ID' => int 190
    public 'category_count' => int 1
    public 'category_description' => string '' (length=0)
    public 'cat_name' => string '1500' (length=4)
    public 'category_nicename' => string '1500' (length=4)
    public 'category_parent' => int 151



    می خوام بر اساس اسم یونیک بشن این تایع رو می ذارم صفحه ارور میشه : array_unique() و با این دو تابع هم می خوام عناصرش رو به آرایه تبدیل کنم بعد یونیک کنم ولی هر کدوم رو می ذارم هیچ فرقی نمی کنه و ساختار آرایه تغییر نمی کنه


    $array = objectToArray($termssize);
    $gedrfedrfe = (array)$termssize;


    ممنون میشم راهنمایی کنید

  2. #2
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: یونیک کردن مقدار ها بر اساس اسم در ارایه ای که عناصر آن آبجکت هستند

    توی یه حلقه foreach بزار و آرایه رو و آبجکت هاش رو بریز توی یک آرایه دوم .. منتها کلیدهای آرایه دوم رو اون فیلد یونیک آبجکت بزار که مقادیر تکراری رونویس بشن

  3. #3

    نقل قول: یونیک کردن مقدار ها بر اساس اسم در ارایه ای که عناصر آن آبجکت هستند

    نقل قول نوشته شده توسط plague مشاهده تاپیک
    توی یه حلقه foreach بزار و آرایه رو و آبجکت هاش رو بریز توی یک آرایه دوم .. منتها کلیدهای آرایه دوم رو اون فیلد یونیک آبجکت بزار که مقادیر تکراری رونویس بشن

    سلام خیلی ممنون که جواب دادید
    این الان کدی هست که آرایه اول رو تولید می کنه


    $termssize = get_categories(array(
    'taxonomy' => 'product_cat',
    'hide_empty' => false
    ));


    و با این کد می خوام یونیکش کنم



    foreach ($termssize as $value){
    $array[][$value->term_id] = $value->name;
    $childrenuniq = array_unique($array);
    $childrenuniq = (object)$childrenuniq;

    }
    var_dump($childrenuniq);

    ولی وقتی اینو وردامپ می کنم فقط یک خروجی میده همه ی خروجی رو به صورت یونیک شده نمی ده نمی دونم مشکل کجاست

  4. #4

    نقل قول: یونیک کردن مقدار ها بر اساس اسم در ارایه ای که عناصر آن آبجکت هستند

    نقل قول نوشته شده توسط plague مشاهده تاپیک
    توی یه حلقه foreach بزار و آرایه رو و آبجکت هاش رو بریز توی یک آرایه دوم .. منتها کلیدهای آرایه دوم رو اون فیلد یونیک آبجکت بزار که مقادیر تکراری رونویس بشن
    من این روش رو درست متوجه نشدم چی کار باید بکنم ولی با این کد stdclass رو به ارایه تبدیل کردم



    $array = json_decode(json_encode($termssize), true);


    به این صورت شد

    array (size=99)
    0 =>
    array (size=17)
    'term_id' => int 189
    'name' => string '1500' (length=4)
    'slug' => string '1500' (length=4)
    'term_group' => int 0
    'term_taxonomy_id' => int 189
    'taxonomy' => string 'product_cat' (length=11)
    'description' => string '' (length=0)
    'parent' => int 151
    'count' => int 1
    'filter' => string 'raw' (length=3)
    'meta_value' => null
    'cat_ID' => int 189
    'category_count' => int 1
    'category_description' => string '' (length=0)
    'cat_name' => string '1500' (length=4)
    'category_nicename' => string '1500' (length=4)
    'category_parent' => int 151
    1 =>
    array (size=17)
    'term_id' => int 190
    'name' => string '1500' (length=4)
    'slug' => string '1500' (length=4)
    'term_group' => int 0
    'term_taxonomy_id' => int 190
    'taxonomy' => string 'product_cat' (length=11)
    'description' => string '' (length=0)
    'parent' => int 151
    'count' => int 1
    'filter' => string 'raw' (length=3)
    'meta_value' => null
    'cat_ID' => int 190
    'category_count' => int 1
    'category_description' => string '' (length=0)
    'cat_name' => string '1500' (length=4)
    'category_nicename' => string '1500' (length=4)
    'category_parent' => int 151
    2 =>


    اما وقتی این دستور رو می ذارم

    $childrenuniq = array_unique($array);

    فقط یه خروجی نشون میده و نتیجه اینجوری میشه


    array (size=1)
    0 =>
    array (size=17)
    'term_id' => int 189
    'name' => string '1500' (length=4)
    'slug' => string '1500' (length=4)
    'term_group' => int 0
    'term_taxonomy_id' => int 189
    'taxonomy' => string 'product_cat' (length=11)
    'description' => string '' (length=0)
    'parent' => int 151
    'count' => int 1
    'filter' => string 'raw' (length=3)
    'meta_value' => null
    'cat_ID' => int 189
    'category_count' => int 1
    'category_description' => string '' (length=0)
    'cat_name' => string '1500' (length=4)
    'category_nicename' => string '1500' (length=4)
    'category_parent' => int 151


    فقط همین یه دونه خروجی رو نشون میده چرا اینجوری میشه دوستان لطفا راهنمایی کنید نمی دونم چجوری درستش کنم

  5. #5
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: یونیک کردن مقدار ها بر اساس اسم در ارایه ای که عناصر آن آبجکت هستند

    اینجوری بنویس



    $array_of_objects = [ object , object ] ;
    $unique_array = [] ;
    foreach($array_of_objects as $object )
    $unique_array[$object->unique_property] = $object ;

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

  1. استفاده از EF در دات نت نیوک
    نوشته شده توسط hmahdavi921 در بخش برنامه نویسی مبتنی بر Microsoft .Net Framework
    پاسخ: 0
    آخرین پست: شنبه 23 آبان 1394, 19:58 عصر
  2. سوال: یونیکد استفاده شده در این فایل
    نوشته شده توسط hamid30sharp در بخش PHP
    پاسخ: 0
    آخرین پست: چهارشنبه 12 شهریور 1393, 10:32 صبح
  3. شیوه استفاده از کامپونتهایی که در برنامه های دیگه استفاده شده
    نوشته شده توسط m_vb1386 در بخش برنامه نویسی در 6 VB
    پاسخ: 8
    آخرین پست: پنج شنبه 20 تیر 1387, 14:47 عصر

برچسب های این تاپیک

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

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