Php Array içinde Değer Değiştirme

Örneğin 2,22,222,2222 şeklinde bir string ifadeniz var. Ve siz 22 değerini 44 yapmak istiyorsunuz. Bunu nasıl yapacaksınız? Bu bir string unutmayın. Eğer düşünceniz şu ise;

$string = '2,22,222,2222';
echo str_replace('22', '44', $string);

Sizi tebrik ederim yanlış cevap. Gelelim doğrusuna, çok fazla istisnai durum olacağından bana kalırsa en mantıklısı dizi haline çevirip dizi elemanını replace etme olacaktır. Örneğin;

$string = '2,22,222,2222';
$string = explode(',', $string);
echo implode(',', array_replace($string, array_fill_keys(
    array_keys($string, 22),
    44
)));

Nerede lazım olacak ki demeyin, bana oldu ki paylaşıyorum 🙂

Bir tane daha alternatif olabilir;

$string = explode(',', '2,22,222,2222');
$replaced = array_search('22', $string);
$string[$replaced] = 44;

Yayınlayan

Tayfun Erbilen

2009'dan beri web işleriyle uğraşan, aynı zamanda amatör müziklede ilgilenen sıradan birisi..

“Php Array içinde Değer Değiştirme” üzerine 2 yorum

  1. $string = ‘2,22,222,2222’;
    echo str_replace( ‘,22,’ , ‘,44,’ , $string);

    🙂

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir