다른 튜토리얼에서 사용하고있는 슬러그 기능이 있습니다.PHP로 URL 인코딩 완성을 찾고 있습니다
public function createSlug($slug) {
// Remove anything but letters, numbers, spaces, hypens
// Remove spaces and duplicate dypens
// Trim the left and right, removing any left over hypens
$lettersNumbersSpacesHypens = '/[^\-\s\pN\pL]+/u';
$spacesDuplicateHypens = '/[\-\s]+/';
$slug = preg_replace($lettersNumbersSpacesHypens, '', mb_strtolower($slug, 'UTF-8'));
$slug = preg_replace($spacesDuplicateHypens, '-', $slug);
$slug = trim($slug, '-');
return $slug;
}
훌륭한 작품입니다. 두 가지 질문이 있습니다.
'&'기호를 제거하는 대신 'amp'가 표시됩니다. 그것이 그렇게되어야하는지 확실하지 않습니다.
예 :
원래 URL
http://www.mywebsite.com?category_id=1&category_name=hot & dogs
새로운 URL을 사용하여 슬러그 기능
http://www.mywebsite.com?category_id=1&category_name=hot-amp-dogs
둘째, 나는 원래의 형태로 다시 디코딩 어떻게 내가 에코 할 수 있도록 페이지에 그것을 밖으로? 대시가 제대로 표시되지 않습니다.
간단한 앰퍼샌드 - 예를 들어 링크에서 볼 수 있습니다. 디코딩을위한 – utooall
은 DB에서 두 개의 필드를 사용하여 슬러그와 원본 URL을 처리하므로 db에서 원본을 가져와야합니다. 그래서 디코딩 할 필요가 없습니다. –
나는 이해합니다. 나는 그 일을하는 방법을 찾아야 겠지. 그것을 지적 주셔서 감사합니다. – utooall