Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Co robi ta funkcja?
Forum PHP.pl > Forum > Przedszkole
m3a2r1
Proszę o rozjaśnienie mi co robi następująca funkcja, ale tak po polsku i przystępnie, widzę, że coś podmienia za pomocą wyrażeń regularnych ale nie wiem czemu to służy.

  1. private function sanitizeStreetName($string, $dir = 'encode') {
  2. $unpretty = array('ą', 'Ą', 'ć', 'Ć', 'ę', 'Ę', 'ł', 'Ł', 'ń', 'Ń', 'ó', 'Ó', 'ś', 'Ś', 'ź', 'Ź', 'ż', 'Ż');
  3. //$pretty = array('XZXaXZX', 'XZXAXZX', 'XZXcXZX', 'XZXCXZX', 'XZXeXZX', 'XZXEXZX', 'XZXlXZX', 'XZXLXZX', 'XZXnXZX', 'XZXNXZX', 'XZXoXZX', 'XZXOXZX', 'XZXsXZX', 'XZXSXZX', 'XZXzXZX', 'XZXZXZX', 'XZXziXZX', 'XZXZIXZX');
  4. $pretty = array('XWXaXYX', 'XWXAXYX', 'XWXcXYX', 'XWXCXYX', 'XWXeXYX', 'XWXEXYX', 'XWXlXYX', 'XWXLXYX', 'XWXnXYX', 'XWXNXYX', 'XWXoXYX', 'XWXOXYX', 'XWXsXYX', 'XWXSXYX', 'XWXzXYX', 'XWXZXYX', 'XWXziXYX', 'XWXZIXYX');
  5.  
  6. if ($dir == 'encode') {
  7. $unpretty = preg_replace('/^(.*)$/', '/\\1/' , $unpretty);
  8. $string = preg_replace($unpretty, $pretty, $string);
  9. } else {
  10. $pretty = preg_replace('/^(.*)$/', '/\\1/' , $pretty);
  11. $string = preg_replace($pretty, $unpretty, $string);
  12. }
  13.  
  14. return $string;
  15. }
Kshyhoo
"Czyści" nazwę ulicy smile.gif
phpion
Cytat(Kshyhoo @ 1.03.2016, 10:15:45 ) *
"Czyści" nazwę ulicy smile.gif

...albo "brudzi" - zależne od parametru $dir.

Przykład: z "Bąk" zrobi "BXWXaXYXk", z "BXWXaXYXk" zrobi "Bąk".
m3a2r1
Czyści czy brudzi, nieistotne, próbuję rozkminić po co to robi smile.gif
phpion
Zapewne żeby wyeliminować jakiś problem z polskimi znakami. Po co? Nie wiem.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.