Maison  >  Article  >  développement back-end  >  Comment utiliser la fonction php pour générer un nom de domaine court

Comment utiliser la fonction php pour générer un nom de domaine court

墨辰丷
墨辰丷original
2018-06-12 10:30:041290parcourir

Les URL raccourcies sont populaires depuis un certain temps. J'y ai été exposé lorsque je travaillais sur l'application Sina Weibo, mais je ne l'ai pas compris récemment, après l'avoir étudié attentivement. , j'ai trouvé que raccourcir les URL est en fait assez simple. Ensuite, nous enregistrerons la méthode d'implémentation consistant à utiliser php pour générer des URL courtes.

php génère une fonction de nom de domaine court

public function createRandCode($string) {
    $code = '';
    $hex_code = '1qaz2wsx3edc4rfv5t-gb6yhn7ujm8ik9ol0p_';
    $now = microtime(true) * 10000;
    $strlen = strlen($hex_code);
 
    $hash_code = hash('sha256', $string);
 
    // 这里会为编码定义一个随机的长度,长度取决于step
    $step = rand(8, 16);
    $count = ceil(strlen($hash_code) / $step);
 
    for($i = 0; $i < $count; $i++) {
      $start = $i * $step;
      $hex_num = substr($hash_code, $start, $step);
      $num = 0x3fffffff & (1 * &#39;0x&#39; . $hex_num);
      $n = $num % $strlen;
      $code .= $hex_code[$n];
    }
 
    return $code;
  }

Résumé : Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.

Recommandations associées :

Comment utiliser GD pour manipuler des images en php

php génère une liste arborescente à partir des résultats d'une requête de base de données

Brève description de la base de données de requête php pour renvoyer des données json

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn