Alternativa ao hash para encurtamento de URL
Procurando uma solução PHP para criar hashes concisos como aqueles empregados por serviços de encurtamento de URL, como o TinyURL? Embora o hash possa vir à mente, esta resposta revela uma abordagem diferente.
TinyURL não depende de hash, mas utiliza números inteiros da Base 36 (ou mesmo da Base 62, incluindo letras maiúsculas e minúsculas) para identificar o registro de destino. Converta strings Base 36 em inteiros com intval($str, 36) e vice-versa com base_convert($val, 10, 36).
Esta alternativa oferece várias vantagens sobre o hash. Elimina possibilidades de colisão e permite a verificação eficiente da existência de URL com a recuperação do ID correspondente na Base 36. Em vez de redirecionar para "/url/1234", o URL abreviado torna-se "/url/ax", proporcionando maior funcionalidade.
Ao aproveitar bases alternativas em vez de hashing, este método oferece velocidade, resistência a colisões e funcionalidade aprimorada para aplicativos de encurtamento de URL em PHP.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3