Kam si uložit pomocné funkce – lama dotaz
- dawe
- Člen | 59
Ahoj, v php a s Nette zacinam. Rad bych se zeptal, kdyz si vytvarim treba novinku, tak si z titlu chci generovat seo friendly url. Chtel bych se zeptat do jakeho adresare si tuto funkci umistit v ramci struktury Nette? Do jakeho php souboru(nazev) a jakym zpusobem ho volat? Tech funkci muze byt casem vice. diky moc
- Šaman
- Člen | 2666
To je úplně jen na tvé volbě.
- chceš si tyto funkce udržovat samostatně mimo aplikaci?
Pak
/vendor/others
- jinak kamkoliv do
/app
V obou případech to najde RobotLoader. Pojmenovat si adresář můžeš
třeba Utils
a jednotlivé třídy podle toho, čím se zabývají.
Inspiruj se v Nette\Utils
Editoval Šaman (28. 5. 2014 22:05)
- dawe
- Člen | 59
Nedari se mi rozchodit to volani, je to spis problem se syntaxi php
dostavam chybu:
Class 'Utils' not found search►
ale jak se k ni dostat?
ve vendors/others mam soubor Utils.php
<?php
namespace Utils;
class Utils
{
public static function getSeoURL($title)
{
$url = $title;
$url = preg_replace('~[^\\pL0-9_]+~u', '-', $url);
$url = trim($url, "-");
$url = iconv("utf-8", "us-ascii//TRANSLIT", $url);
$url = strtolower($url);
$url = preg_replace('~[^-a-z0-9_]+~', '', $url);
return $url;
}
}
nasledne v jednom modelu volam pri ukladani dat:
$data->seo_url = \Utils::getSeoURL($data->title);
co delam spatne?
- besanek
- Člen | 128
Nebylo by lepší využít Nette\Utils\Strings::webalize()
https://doc.nette.org/…tils/strings#…`
?