• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
حذف یک مقدار از آرایه و بصورت رشته نمایش دادن آن آرایه
#1
سلام،
امروز اینترنت رو داشتم می گشتم ، گفتم ببینم چه راه هایی پیشنهاد شده برای اینکه مقداری از یک آرایه رو حذف کنیم و بعد به رشته تبدیلش کنیم. خودم راه های متفاوتی رو پیشنهاد کردم (به خودم!) همشونم جوابگو بودند اما برای نفر بعدی که میدید شاید گیج می شد. برای همین من بین همه اونایی که دیدم این رو پسندیدم.
کد پی‌اچ‌پی:
$arrays= array( 'Alireza''IranPHP','Saeed','Vahid','...' );
$newarray array_diff$arrays, array( 'Saaed','..'));
print_r$newarray); // khoorji be soorate array hast: Alireza, IranPHP, Vahid
$myarray implode','$newarray);
print( 
$myarray); //khorooji besorate string hast: alireza,IranPHP,Vahid 

بیشتر در مورد array_diff بدونید.

خلاصه ای در مورئ array_diff :
پارامتر اول رو با پارامتر دوم مقایسه می کنه و تفاوت رو احساس می کنه! Big Grin یعنی برگشت میده.

explode که کارش معلومه ... رشته ای رو از بین چیزی منفجر می کنه یعنی بر میداره و بصورت ارایه تحویلت میده.

implode هم کارش تابلوست ... آرایه ای رو بهش میدی و یک رشته بعنوان جدا کننده هم مشخص می کنی ، بعد بصورت رشته تحویلت میده نتیجه رو.


امیدوارم موفق باشید،
علیرضا Heart
غایب
  پاسخ
تشکر شده توسط : Padideh hosseintdk775 Bojbaj
#2
جالب بود در واقع هر مقداری که در array_diff تعریف کرده برابر با $array باشه میاد پاک میکنه . Heart
  پاسخ
تشکر شده توسط :
#3
فقط یه مشکلی که داره اینه که پس از حذف ایندکس ها رو sort نمیکنه:
کد پی‌اچ‌پی:
$newarray array_diff$a, array( 'Brown','..'));


$i=0;
while(isset(
$newarray[$i]))
{    print 
"NewArray:-->  $newarray[$i]"."<br>";
     
$i++;
}
print_r$newarray); // khoorji be soorate array hast 

خروجی:
کد:
NewArray:--> Blue
NewArray:--> Red
NewArray:--> Green
Array ( [0] => Blue [1] => Red [2] => Green [5] => Yellow [6] => Black )
همونطور که میبینید تو پیمایش های سریالی عنصر های بعد از اندیس حذف شده قابل نمایش نیستند...

و البته راه چاره اش استفاده از تابع rsort هست:
کد پی‌اچ‌پی:
rsort($newarray);
print_r$newarray); 

خروجی:
کد:
Array ( [0] => Yellow [1] => Red [2] => Green [3] => Blue [4] => Black )

البته باید توجه کنید که زمانی که باید از key ها به عنوان پارامتر جستجوها و عملیات استفاده کنیم، نباید این کار رو بکنیم...
  پاسخ
تشکر شده توسط :
#4
نقل قول:فقط یه مشکلی که داره اینه که پس از حذف ایندکس ها رو sort نمیکنه
نبایدم ترتیب بهشون بده. اصلاً اگر ترتیب قبلی رو هم بهم بزنه بنظر من مورد نداره (که البته اینکارو نمی کنه) واسه ترتیب دادن توابع دیگه ای هست.
غایب
  پاسخ
تشکر شده توسط :
#5
(۱۳۹۱ فروردین ۰۸, ۰۵:۰۱ ب.ظ)cyletech نوشته:
نقل قول:فقط یه مشکلی که داره اینه که پس از حذف ایندکس ها رو sort نمیکنه
نبایدم ترتیب بهشون بده. اصلاً اگر ترتیب قبلی رو هم بهم بزنه بنظر من مورد نداره (که البته اینکارو نمی کنه) واسه ترتیب دادن توابع دیگه ای هست.
من که گفتم " باید توجه کنید که زمانی که باید از key ها به عنوان پارامتر جستجوها و عملیات استفاده کنیم، نباید این کار رو بکنیم..."

میشه یه چند نمونه از اون توابع ترتیب دادن رو هم بگید؟

  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان