Shortening URLs with PHP
When creating short URLs, it's common practice to rely on hashes to generate unique identifiers. However, a better approach is to use different bases for this purpose. TinyURL, for instance, uses a base of either 36 or 62.
Converting Base 36 to Integer:
<code class="php">$intValue = intval($str, 36);</code>
Converting Integer to Base 36:
<code class="php">$base36Value = base_convert($val, 10, 36);</code>
Instead of using routes like /url/1234, shorter URLs can be created with bases like /url/ax. This approach offers several advantages:
In conclusion, it's advisable to utilize different bases rather than hashing when generating short URLs. This allows for optimized performance, collision avoidance, and simplified database lookups.
The above is the detailed content of How to Optimize Short URL Generation with Different Bases. For more information, please follow other related articles on the PHP Chinese website!