|  Download               
 ? URLifyDescriptionConvert any string into an valid and readable string for usage in the url. This is a PHP port of "URLify.js" from the Django project + fallback via "Portable ASCII".
We handles symbols from many languages via an matching-array and others via "ASCII::to_transliterate()". 
https://github.com/django/django/blob/master/django/contrib/admin/static/admin/js/urlify.js
https://github.com/voku/portable-ascii
https://github.com/voku/portable-utf8
 Install via "composer require"composer require voku/urlify
 Usage:namespace: "voku\helper\URLify" To generate slugs for URLs:echo URLify::filter(' J\'étudie le français ');
// "J-etudie-le-francais"
echo URLify::filter('Lo siento, no hablo español.');
// "Lo-siento-no-hablo-espanol"
 To generate slugs for file names:echo URLify::filter('????.jpg', 60, '', true);
// "foto.jpg"
 To simply transliterate characters:echo URLify::downcode('J\'étudie le français');
// "J'etudie le francais"
echo URLify::downcode('Lo siento, no hablo español.');
// "Lo siento, no hablo espanol."
/Or use transliterate() alias:/
echo URLify::transliterate('Lo siento, no hablo español.');
// "Lo siento, no hablo espanol."
 To extend the character list:URLify::add_chars(array(
  '¿' => '?', '®' => '(r)', '¼' => '1/4',
  '½' => '1/2', '¾' => '3/4', '¶' => 'P'
));
echo URLify::downcode('¿ ® ½ ¼ ¾ ¶');
// "? (r) 1/2 1/4 3/4 P"
 To extend or replace the default replacing list:URLify::add_array_to_seperator(array(
  "/®/"
));
echo URLify::filter('¿ ® ½ ¼ ¾ ¶');
// "12-14-34-P"
 To extend the list of words to remove for one language:URLify::remove_words(array('remove', 'these', 'too'), 'de');
 To prioritize a certain language map:echo URLify::filter(' Ägypten und Österreich besitzen wie üblich ein Übermaß an ähnlich öligen Attachés ', 60, 'de');
// "Aegypten-und-Oesterreich-besitzen-wie-ueblich-ein-Uebermass-aehnlich-oeligen-Attaches"
   
echo URLify::filter('Ca?alo?lu, çal??t???, müjde, laz?m, mahkûm', 60, 'tr');
// "Cagaloglu-calistigi-mujde-lazim-mahkum"
 Please note that the "ü" is transliterated to "ue" in the first case, whereas it results in a simple "u" in the latter. Available languages
Arabic: 'ar'
Austrian (German): 'de_at' 
Austrian (French): 'fr_at'
Azerbaijani: 'az'
Bulgarian: 'bg'
Burmese: 'by'
Croatian: 'hr'
Czech: 'cs'
Danish: 'da'
English: 'en'
Esperanto: 'eo'
Estonian: 'et'
Finnish: 'fi'
French: 'fr'
Georgian: 'ka'
German: 'de'
Greek: 'el' 
Hindi: 'hi'
Hungarian: 'hu'
Kazakh: 'kk'
Latvian: 'lv'
Lithuanian: 'lt'
Norwegian: 'no'
Polish: 'pl'
Romanian: 'ro'
Russian: 'ru'
Serbian: 'sr'
Slovak: 'sk'
Swedish: 'sv'
Switzerland (German): 'de_ch' 
Switzerland (French): 'fr_ch' 
Turkish: 'tr'
Ukrainian: 'uk'
Vietnamese: 'vn'
 SupportFor support and donations please visit Github | Issues | PayPal | Patreon. For status updates and release announcements please visit Releases | Twitter | Patreon. For professional support please contact me. Thanks
Thanks to GitHub (Microsoft) for hosting the code and a good infrastructure including Issues-Managment, etc.
Thanks to IntelliJ as they make the best IDEs for PHP and they gave me an open source license for PhpStorm!
Thanks to Travis CI for being the most awesome, easiest continous integration tool out there!
Thanks to StyleCI for the simple but powerfull code style check.
Thanks to PHPStan && Psalm for relly great Static analysis tools and for discover bugs in the code!
 |