• 04-11-2010, 18:45:39
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Benim bi preg_replace ve Dizide ki tüm verileri güncellemeyle ilgili bir sorum var
    Şöyle örneklendirmek gerekirse benim elimde
    $sanatci adında bir dizi var diyelim ve dizi şu yapıda;
    Array ( 
    [0] => Kanye West 
    [1] => Rascal Flatts 
    [2] => Rihanna 
    [3] => Chris Brown 
    [4] => Taylor Swift 
    [5] => Far East Movement 
    [6] => Luke Bryan 
    [7] => Glee 
    )
    Ben bu diziyi kaynak alarak şöyle bir dizi oluşturmak istiyorum örn. $sanatcibold olsun;

    Array ( 
    [0] => <b>Kanye West</b>
    [1] => <b>Rascal Flatts</b>
    [2] => <b>Rihanna</b>
    [3] => <b>Chris Brown</b>
    [4] => <b>Taylor Swift</b>
    [5] => <b>Far East Movement</b>
    [6] => <b>Luke Bryan</b>
    [7] => <b>Glee</b>
    )
    Böyle bir dizi oluşturmak için yapmam gereken nedir? Ve bu diziyi oluşturdum diyelim elimde ki bir $metin var. Onun içinde birinci dizidekileri ikincidekiyle değiştirmek için preg_replace'den ;

     preg_replace($sanatci, $sanatcibold, $metin);
    Daha mantıklı ve daha hızlı bir yol var mı?

    Şimdiden çok teşekkür ederim
  • 04-11-2010, 18:49:19
    #2
    <?
    
    $say=count($sanatci);
    
    $yeniarray=array;
    
    for($i=0;$i<$say;$i++)
    {
      $yeniarray[]="<b>".$sanatci[$i]."</b>";
    }
    
    print_r($yeniarray);
    ?>
  • 04-11-2010, 19:00:37
    #3
    // Kaç sanatçı var?
    $count['sanatci'] = count($sanatci);
    
    // Her biri için
    for($i=0; $i<$count['sanatci']; ++$i) {
      // Hakan = <b>Hakan</b>;
      $sanatci[$i] = '<b>' . $sanatci[$i] . '</b>';
    }
  • 04-11-2010, 22:55:21
    #4
    fatal adlı üyeden alıntı: mesajı görüntüle
    <?
    
    $say=count($sanatci);
    
    $yeniarray=array;
    
    for($i=0;$i<$say;$i++)
    {
      $yeniarray[]="<b>".$sanatci[$i]."</b>";
    }
    
    print_r($yeniarray);
    ?>
    Çok teşekkürler hocam hızınıza hayran kaldım

    Hkan adlı üyeden alıntı: mesajı görüntüle
    // Kaç sanatçı var?
    $count['sanatci'] = count($sanatci);
    
    // Her biri için
    for($i=0; $i<$count['sanatci']; ++$i) {
      // Hakan = <b>Hakan</b>;
      $sanatci[$i] = '<b>' . $sanatci[$i] . '</b>';
    }
    Sizede saolun hocam sizin yazım stiliniz daha hızlı çalıştı denemelerimde. Çok fazla döngü varda kullandığım sayfada.

    Az önce de birşey denedim while sanırım for'dan daha hızlı çalışıyor. Yanılıyormuyum?
  • 04-11-2010, 23:07:17
    #5
    Kullanım şeklinize göre daha stabil çalışabilir. Aşağıdaki kod bi önceki mesajımdaki kodla aynı işlevi görür. Sanırım bu daha hızlı çalışır.

    // Kaç sanatçı var?
    $count['sanatci'] = count($sanatci);
    
    // Sıra sayısı
    $i = 0;
    
    // Her biri için
    while($i < $count['sanatci']) {
      // Hakan = <b>Hakan</b>;
      $sanatci[$i] = '<b>' . $sanatci[$i] . '</b>';
    
      // Sırayı da arttıralım ki kısır döngüye düşmesin
      ++$i;
    }