• 12-08-2012, 01:57:48
    #1
    Üyeliği durduruldu
    S.a arkadaşlar spinlemek terimini biliyoruz bilmeyen arkadaşlarımız için bir örnek vereiym

    http://articlespinnertool.com/

    bu tarz bir kodlama lazım bana acaba bilen gören varmı ?
  • 12-08-2012, 02:27:33
    #3
    Üyeliği durduruldu
    dostum çıkıyorda uygulayamadım belkide burada yardımcı olan birisi çıkar diye düşündüm.
  • 12-08-2012, 03:47:37
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    The_joker adlı üyeden alıntı: mesajı görüntüle
    dostum çıkıyorda uygulayamadım belkide burada yardımcı olan birisi çıkar diye düşündüm.
    Amacınız ney ki? Kendiniz için mi kullanacaksınız, bir servis mi yapacaksınız? Deimosx'in verdiği linklerde kodlar verilmiş zaten.
  • 12-08-2012, 03:48:31
    #5
    Üyeliği durduruldu
    grafitus adlı üyeden alıntı: mesajı görüntüle
    Amacınız ney ki? Kendiniz için mi kullanacaksınız, bir servis mi yapacaksınız? Deimosx'in verdiği linklerde kodlar verilmiş zaten.
    kendim için kullanacağım .Bir projem için test amaçlı çalışmalar yapacağım.Arkadaş linkleri verdi bende ilk başta oralar baktım ancak çalıtıramadım o yüzden buraya yazdım.Sanırım açık oldu bu
  • 12-08-2012, 04:43:48
    #6
    Buyrun, çalışıyor:
    $string = '{{The|A}} {{quick|speedy|fast}} {{brown|black|red}} {{fox|wolf}} {{jumped|bounded|hopped|skipped}} over the {{lazy|tired}} {{dog|hound}}';
    
    echo '
    <p><b>Toplam '.spin($string, false, true).'</b> permütasyon oluşturabilir....</p>
    <p>Örneğin: ' . spin($string, false) . '</p>';
    
    function spin($string, $seedPageName = true, $calculate = false, $openingConstruct = '{{', $closingConstruct = '}}', $separator = '|')
    {
        # Choose whether to return the string or the number of permutations
        $return = 'string';
        if($calculate)
        {
            $permutations   = 1;
            $return         = 'permutations';
        }
    
        # If we have nothing to spin just exit (don't use a regexp)
        if(strpos($string, $openingConstruct) === false)
        {
            return $$return;
        }
        
        if(preg_match_all('!'.$openingConstruct.'(.*?)'.$closingConstruct.'!s', $string, $matches))
        {
            # Optional, always show a particular combination on the page
            if($seedPageName)
            {
                mt_srand(crc32($_SERVER['REQUEST_URI']));
            }
    
            $find       = array();
            $replace    = array();
    
            foreach($matches[0] as $key => $match)
            {
                $choices = explode($separator, $matches[1][$key]);
    
                if($calculate)
                {
                    $permutations *= count($choices);
                }
                else
                {
                    $find[]     = $match;
                    $replace[]  = $choices[mt_rand(0, count($choices) - 1)];
                }
            }
    
            if(!$calculate)
            {
                # Ensure multiple instances of the same spinning combinations will spin differently
                $string = str_replace_first($find, $replace, $string);
            }
        }
    
        return $$return;
    }
    
    # Similar to str_replace, but only replaces the first instance of the needle
    function str_replace_first($find, $replace, $string)
    {
        # Ensure we are dealing with arrays
        if(!is_array($find))
        {
            $find = array($find);
        }
    
        if(!is_array($replace))
        {
            $replace = array($replace);
        }
    
        foreach($find as $key => $value)
        {
            if(($pos = mb_strpos($string, $value)) !== false)
            {
                # If we have no replacement make it empty
                if(!isset($replace[$key]))
                {
                    $replace[$key] = '';
                }
    
                $string = mb_substr($string, 0, $pos).$replace[$key].mb_substr($string, $pos + mb_strlen($value));
            }
        }
    
        return $string;
    }
    .php uzantısıyla dosya olarak kayıt edip sunucunuza gönderin. Değişim yapılacak kelimeleri {{bu|yada bu|yada yada bu}} şeklinde | karakteriyle birleştirerek yazıyorsunuz.
  • 12-08-2012, 16:28:41
    #7
    Üyeliği durduruldu
    çalışmadı hocam.
  • 13-08-2012, 04:40:48
    #8
    Kimlik doğrulama veya yönetimden onay bekliyor.
    spin ne demek neişe yarıyor o hocam.
  • 13-08-2012, 12:48:48
    #9
    kodlar çalışıyor ben denedim, yapman gereken | işareti ile ayrılmış yerlere dönecek kelimeleri yazman fonksiyonda.