blog sur le développement web, jquery,css3, Magento, Symphony, php et bien d'autres choses

php router url

pour ceux qui désirent faire un router url en fonction d’une configuration par poids par URL voici un script qui pourra vous être utile.

admettons que vous ayez 8 URLS de page de vente sur lesquelles rediriger du trafic et certaines vous rapportent plus que d’autres, vous pouvez faire en sorte de rediriger plus souvent sur l’une ou l’autre d’entre elles en leur affectant un poids, plus le poids est élevé plus la page sera utilisée comme redirection.

l’algorithme utilisé pour ce script est très proche de l’algorithme de sélection aléatoire pondérée.


        // plus le poids est élevé plus l'url va ressortir
        $arrayRules = array(
         'http://url1.com' => 10,
         'http://url2.com' => 20,
         'http://url3.com' => 30,
         'http://url4.com' =>; 90,
        );

        $arSite = array_keys($arrayRules);
        $arRules = array_values($arrayRules);

        $total = array_sum($arrayRules);
        $rdNumber = rand(0, $total);

        $seek = 0;
        $resultat = 0;

        for ($i = 0; $i < count($arRules); $i++) {

            if ($rdNumber <= $seek + $arRules[$i]) {
                $resultat = $i;
                break;
            }
            $seek += $arRules[$i];
        }

        // retourne l'url sur laquelle rediriger
        return $arSite[$resultat];

une optimisation intéressante de ce script serait de mettre en place un système de « machine learning » pour ne plus avoir a configurer les poids a la main mais de manière automatique en s’appuyant sur les statistiques de performance des pages en question.

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s