Below is the text of the page https://iphp.com.ua/archives/561 stored 2011-11-08 by archive.org.ua. The original page over time could change. View as original html

Manufacturing flic.kr style photo URLs at Всякие интересные штуч

Главная [http://iphp.com.ua] About Cheat Sheet Sexy PHP Всякие интересные штучки для WEB-разработчика Октябрь 5, 2010 No comments Manufacturing flic.kr style photo URLs Super quick note, hopefully sufficient info. The format for the short photo URLs is: flic.kr/p/{short-photo-id} A short photo id is a base58 conversion of the photo id. Base58 is like base62 [0-9a-zA-Z] with some characters removed to make it less confusing when printed. (namely 0, O, I, and l). So that leaves an alphabet of: 123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ I’m including below a variation of the code we use to do base conversion. Note it doesn’t use modulus because PHP’s modulus operator overflows for large numbers (like photo ids) function base_encode($num, $alphabet) { $base_count = strlen($alphabet); $encoded = ''; while ($num >= $base_count) { $div = $num/$base_count; $mod = ($num-($base_count*intval($div))); $encoded = $alphabet[$mod] . $encoded; $num = intval($div); } if ($num) $encoded = $alphabet[$num] . $encoded; return $encoded; } function base_decode($num, $alphabet) { $decoded = 0; $multi = 1; while (strlen($num) > 0) { $digit = $num[strlen($num)-1]; $decoded += $multi * strpos($alphabet, $digit); $multi = $multi * strlen($alphabet); $num = substr($num, 0, -1); } return $decoded; } grabbed from http://www.flickr.com/groups/api/discuss/72157616713786392/ You may Оставить комментарий or Subscribe to Comments RSS . Leave a comment Please be polite and on topic. Your e-mail will never be published. You must be logged in to post a comment. RSS Feeds Entries RSS 2.0 Комментарии RSS 2.0 Recent Comments admin 2008-07-11 17:51:47 admin 2008-05-11 23:38:26 Morozov 2007-12-22 16:08:00 admin 2007-11-01 03:06:28 Архивы Ноябрь 2011 Сентябрь 2011 Август 2011 Июль 2011 Январь 2011 Декабрь 2010 Октябрь 2010 Июнь 2010 Апрель 2010 Март 2010 Февраль 2010 Январь 2010 Декабрь 2009 Октябрь 2009 Август 2009 Июль 2009 Июнь 2009 Май 2009 Апрель 2009 Март 2009 Февраль 2009 Январь 2009 Декабрь 2008 Ноябрь 2008 Октябрь 2008 Сентябрь 2008 Август 2008 Июль 2008 Май 2008 Апрель 2008 Февраль 2008 Январь 2008 Ноябрь 2007 Рубрики Cars FreeBSD/Linux Hardware Highload/Balancing Humor Java JavaScript jQuery LAMP Mysql nginx PHP Soft/Tools Theory Tools Uncategorized WEB 2.0 Misc Войти Свежие записи Мониторинг системы под FreeBSD Тюнинг FreeBSD 7-8 (sysctl, loader.conf) Некоторые опции sysctl Конвертируем все php-файлы проекта в UTF-8 Перенос FreeBSD на другой диск Удобный конфиг для tcsh Лишние символы перед тегом html, странные цифры в начале и в конце страницы в выдаче веб-сервера Управление портами в FreeBSD Converting SSL-certificates from CRT format to PEM Шпионам за чужой консолью Ссылки Homo-Adminus Blog High Load WebProjects’ Journal www.lissyara.su High Scalability Highload Web High Availability MySQL onPHP Insight IT MySQL Performance Blog Unix Toolbox © 2011 Всякие интересные штучки для WEB-разработчика | the "dark" theme