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;

Bir cevap yazın

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