Jadual Kandungan
php短网址算法实例代码分享
php实现的短网址算法,理论上支持1,073,741,824个短网址。
每个网址用6个字符代替,(6^32) 最多可以拥有1,073,741,824个短网址。
当然,你还可以记录更详细的信息,如访问记录,创建时间等。
如果真不够用了,还可以删掉很久不用的。
<span>function</span> shorturl(<span>$input</span><span>) { </span><span>$base32</span> = <span>array</span><span> ( </span>'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5'<span> ); </span><span>$hex</span> = <span>md5</span>(<span>$input</span><span>); </span><span>$hexLen</span> = <span>strlen</span>(<span>$hex</span><span>); </span><span>$subHexLen</span> = <span>$hexLen</span> / 8<span>; </span><span>$output</span> = <span>array</span><span>(); </span><span>for</span> (<span>$i</span> = 0; <span>$i</span> < <span>$subHexLen</span>; <span>$i</span>++<span>) { </span><span>$subHex</span> = <span>substr</span> (<span>$hex</span>, <span>$i</span> * 8, 8<span>); </span><span>$int</span> = 0x3FFFFFFF & (1 * ('0x'.<span>$subHex</span><span>)); </span><span>$out</span> = ''<span>; </span><span>for</span> (<span>$j</span> = 0; <span>$j</span> < 6; <span>$j</span>++<span>) { </span><span>$val</span> = 0x0000001F & <span>$int</span><span>; </span><span>$out</span> .= <span>$base32</span>[<span>$val</span><span>]; </span><span>$int</span> = <span>$int</span> >> 5<span>; } </span><span>$output</span>[] = <span>$out</span><span>; } </span><span>return</span> <span>$output</span><span>; }</span>
Salin selepas log masuk
测试代码:
<span>$input</span> = 'http://www.jbxue.com/1'<span>; </span><span>$output</span> = shorturl(<span>$input</span><span>); </span><span>echo</span> "Input : <span>$input</span>\n"<span>; </span><span>echo</span> "Output : {<span>$output</span>[0]}\n"<span>; </span><span>echo</span> " {<span>$output</span>[1]}\n"<span>; </span><span>echo</span> " {<span>$output</span>[2]}\n"<span>; </span><span>echo</span> " {<span>$output</span>[3]}\n"<span>; </span><span>echo</span> "\n"<span>; </span><span>$input</span> = 'http://www.jbxue.com/2'<span>; </span><span>$output</span> = shorturl(<span>$input</span><span>); </span><span>echo</span> "Input : <span>$input</span>\n"<span>; </span><span>echo</span> "Output : {<span>$output</span>[0]}\n"<span>; </span><span>echo</span> " {<span>$output</span>[1]}\n"<span>; </span><span>echo</span> " {<span>$output</span>[2]}\n"<span>; </span><span>echo</span> " {<span>$output</span>[3]}\n"<span>; </span><span>echo</span> "\n";
Salin selepas log masuk
输出:
Input : http://www.jbxue.com/1
Output : h0xg4r
bdr3tw
osk2d3
4azfqa
Input : http://www.jbxue.com/2
Output : tm5kxb
ceoj2s
yw3dvl
nrmrxl
您可能感兴趣的文章:
- php生成短网址原理与实例
- php生成短网址示例代码
- php生成短网址的思路与实现
- php生成短网址 仿微博短网址生成代码
- php微博短网址算法 php生成短网址的实现代码
- php短网址超简单代码
- php生成短网址的简单代码
- php 生成短网址的一例代码
- php 短网址的实现代码
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas
R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu
By 尊渡假赌尊渡假赌尊渡假赌
Assassin's Creed Shadows: Penyelesaian Riddle Seashell
2 minggu yang lalu
By DDD
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu
By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu
By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas
Tutorial CakePHP
1378
52

