Как преобразовать сложное имя файла в HTML-ссылку?

У меня есть каталог с файлами PDF, для которых мне нужно создать индекс. Это страница PHP со списком ссылок:

<A HREF = "path to file">filename</A>

Имена файлов могут быть сложными:

LVD 2-1133 - Ändring av dumpningslina (1984-11-20).pdf

Как правильно установить ссылку на этот файл на сервере Linux / Apache?

Есть ли функция PHP для этого преобразования?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
0
2 236
5
Перейти к ответу Данный вопрос помечен как решенный

Ответы 5

urlencode (), вероятно, должен делать то, что вы хотите.

Редактировать: urlencode () отлично работает со шведскими символами.


    <?php
        echo urlencode("åäö");   
    ?>

преобразуется в:


    %E5%E4%F6

Кодировка URL. Я думаю, что это urlencode() в PHP.

Ответ принят как подходящий

Вы можете использовать rawurlencode () для преобразования строки в соответствии со спецификацией RFC 1738. Эта функция заменяет все не буквенно-цифровые символы их соответствующим кодом.

Отличие от urlencode () состоит в том, что пробелы кодируются как знаки плюса.

Вы, вероятно, захотите использовать последний.

Этот метод называется процентным или URL-кодированием. Подробнее см. Википедия.

rawurlencode будет кодировать «экзотические» символы в URL.

Функция urlencode () преобразует пробелы в знаки плюс (+), поэтому работать не будет. Код rawurlencode делает свое дело. Спасибо.

Обязательно конвертируйте каждую часть пути отдельно, иначе путь / файл будет преобразован в путь% 2Ffile. (это было то, что я пропустил)

Другие вопросы по теме