Odpowiedzi:
Jasne, po prostu sprawdź, czy ostatni znak jest ukośnikiem, a następnie nuke to.
if(substr($string, -1) == '/') {
$string = substr($string, 0, -1);
}
Inną (prawdopodobnie lepszą) opcją byłoby użycie rtrim()- ta usuwa wszystkie końcowe ukośniki:
$string = rtrim($string, '/');
Od dawna akceptowałem, jednak w moich powiązanych poszukiwaniach natknąłem się tutaj i dodaję dla „kompletności”; rtrim()jest świetny, jednak zaimplementowany w ten sposób:
$string = rtrim($string, '/\\'); //strip both forward and back slashes
Zapewnia przenośność z * nix do Windows , ponieważ zakładam, że to pytanie dotyczy radzenia sobie ze ścieżkami.
DIRECTORY_SEPARATORzamiast '/\\'.
rtrim Używa rtrim, ponieważ szanuje łańcuch nie kończy się końcowym ukośnikiem
Tak to jest!
DIRECTORY_SEPARATORzamiast'/'ścieżek plików, aby działało na wszystkich platformach.