• 26-11-2013, 00:37:01
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Arkadaşlar şöyle bir kodum var, bunlar değerlere atananlar:

    $degis = array( 
                 '{KULLANICI}' => 'kekee',
                 '{USER_YAS}'  => '23',
                 'SITEISMI'  => $board_config['siteismi'], 
                 'EMAIL_SIG' => str_replace('<br>', "\n", "-- \n" . $board_config['email_signal']) 
         );
    Burada yapmak istediğim basit bir bul değiştir işlemi.


    $icerik = 'burada bir deneme {USER_YAS} yapıyoruz, ardından.';
    $body            = str_replace($degis[0], $degis[1], $icerik);
    
    echo $body;
    Elde etmek istediğim sonuç:

    burada bir deneme 23 yapıyoruz, ardından

    Ancak herhangi bir bul değiştir işlemi olmuyor. Sanırım hatam ise $degis adlı diziye atanan içeriği tam olarak çekemiyorum.

    Çekemeğim içinde str_replace işlemi yapamıyorum. $degis dizindeki tüm değerleri çekmek ve str_replace işlemi uygulamak için galba bir tür while döngüsü yapmam lazım ? Yardım bekliyorum.
  • 26-11-2013, 00:52:44
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    ........
  • 26-11-2013, 01:16:10
    #3
    saintx cevabın için teşekkür ederim, çok yardımcı oldun. Altta verdiğin kod tam olarak sorumun cevabını içeriyor.


        function find_replace($string, $words) {
            return str_replace(array_keys($words), array_values($words), $string);
        }
        
        $words = array(
            "saintx" => "Ogün KARAKUŞ",
            "vesselam" => "Oğuz KOMSER"
        );
        
        $text = "saintx vesselam oleeey";
        
        print_r(array(
            "onceki" => $text,
            "sonraki" => find_replace($text, $words)
        ));
    Burada ben sadece alt kısımda küçük bir edit ile istediğim sonucu elde ettim.

    Bunun yerine
        print_r(array(
            "onceki" => $text,
            "sonraki" => find_replace($text, $words)
        ));
    Bu şekilde düzenleyerek
     echo find_replace($text, $words);