Убрать расширение файла php

Как удалить расширение из строки в PHP?

Есть три способа удаления расширения из строки. Они следующие

Использование функции pathinfo (): Функция pathinfo () возвращает массив, содержащий имя каталога, базовое имя, расширение и имя файла.

Синтаксис:

В качестве альтернативы, если в качестве параметра передается только одна константа PATHINFO_, возвращается только та часть полного имени файла.

Пример:

// Инициализация переменной с именем файла

// Извлечение только имени файла с использованием констант

Примечание. Если имя файла содержит полный путь, возвращается только имя файла без расширения.

Использование функции basename (): Функция basename () используется для возврата завершающего компонента имени пути в виде строки. Basename () наивно работает с входной строкой и не знает о фактической файловой системе или компонентах пути, таких как «..»
Синтаксис:

Когда известно расширение файла, оно может быть передано в качестве параметра функции basename, чтобы сообщить ей об удалении этого расширения из имени файла.

Пример:

// Инициализация переменной
// с именем файла

// Суффикс передается как второй
// параметр

Синтаксис:

Пример:

// Инициализация переменной
// с именем файла

// Показать имя файла

Примечание. Если имя файла содержит полный путь, то возвращается полный путь и имя файла без расширения.

Источник

Убрать расширение php в адресной строке

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Как сделать, чтобы в адресной строке не отображалось расширение php?
как сделать чтоб не высвечивалась приставка php? и заходить что б можно было

Как убрать GET параметры в адресной строке
Здравствуйте! Возможно преобразовать ссылку test1.ru/index.php?page=1 в test1.ru/index/page/1/.

Как убрать /public/ в адресной строке?
.htaccess / AddDefaultCharset utf-8 RewriteEngine on RewriteCond %_%.

Ну так измените

Читайте также:  салон хендай в старом осколе телефон

Добавлено через 1 минуту

перекинул, но не выходит.

У меня это работает. Тоже на Денвере

Добавлено через 8 минут

Если я правильно поняла, то это:

Request exceeded the limit of 10 internal redirects due to probable configuration error. Use ‘LimitInternalRecursion’ to increase the limit if necessary. Use ‘LogLevel debug’ to get a backtrace., referer: http://blitz.ua/

Request exceeded the limit of 10 internal redirects due to probable configuration error. Use ‘LimitInternalRecursion’ to increase the limit if necessary. Use ‘LogLevel debug’ to get a backtrace., referer: http://blitz.ua/?id=3&p=2

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Не показывать расширение в адресной строке
Как убрать расширение страницы(например *.php). Что бы вместо site.ru/index.php было site.ru/index

Расширение в имени файла в адресной строке
Почему на некоторых сайтах в адресной строке отображается например : http://mysite.com.ua/filename.

Источник

Как удалить расширение файлов php из URL (ссылок) на сайте

В сегодняшней заметке я расскажу как можно быстро и легко убрать расширения php, cgi, html и любые другие из URL (из ссылок в адресной строке). Иногда такая потребность возникает, например, для придания ссылкам красоты и большего удобства для посетителей сайта.

К примеру из http://example.com/pagename.php нужно сделать http://example.com/pagename

При этом, разумеется, нужно при необходимости заменить «php» в строках 3 и 4 на нужное расширение.

После этого переход по ссылкам вида http://example.com/pagename начнёт происходить без ошибок.

Альтернативный вариант.

Наш читатель aleksey предложил ещё вот такой вариант:

Обратите внимание, может влиять на обработку POST-запросов отправляемых скриптам с расширением php! (спасибо S1lllver за важное уточнение)

#301 редирект с example.com/page.html на example.com/page
RewriteCond % ^[A-Z]<3,9>\ /.*\.html\ HTTP/
RewriteRule ^(.*)\.html$ /$1 [R=301,L]

Возможные проблемы

Если Ваш хостер использует связку nginx+Apache, то при попытке вышеописанным методом удалить расширения из ссылок на картинки, html-файлы и прочую статику будет отдаваться ошибка 404.

Читайте также:  запоры у новорожденных на смешанном вскармливании что делать 2 месяца

В этом случае Вам необходимо либо самостоятельно настроить сервер таким образом, чтобы исключить нужные типы файлов из списка статических файлов либо обратиться в службу технической поддержки с той же просьбой.

Прокомментировать Отменить комментарий

15 комментариев к “Как удалить расширение файлов php из URL (ссылок) на сайте”

Лепить «абы что» не хочу, а вдумчиво заняться ни времени, ни энтузиазма.
Хотя Вы правы — без фавикона немного неудобно плюс в поисковой выдаче не очень видно.
Займусь.

Источник

Как я могу изменить расширение файла с помощью PHP?

Как изменить расширение файла с помощью PHP?

Ex: фото.jpg на фото.exe

10 ответов

в современных операционных системах имена файлов могут содержать периоды задолго до расширения файла, например:

PHP предоставляет способ найти имя файла без расширения, которое учитывает это, а затем просто добавьте новое расширение:

изменит любое расширение на то, что вы хотите. Замените png на то, что когда-либо желаемое расширение будет.

заменить расширение, сохранить информацию о пути

Как только у вас есть имя файла в строке, сначала используйте regex для замены расширения с расширением по вашему выбору. Вот небольшая функция, которая сделает это:

затем использовать переименовать() функция переименования файла с новым именем файла.

просто замените его на regexp:

вы также можете расширить этот код, чтобы удалить другие расширения изображений, а не только bmp:

изменения сделаны только на части расширения. Оставляет другую информацию неизменной.

для вентиляторов regex, модифицированная версия ‘Человек’ решение Тхань Чунг, который всегда будет содержать новое расширение (так что если вы напишите программу преобразования файлов, вы случайно не перезаписать исходный файл с результатом) будет составлять:

Читайте также:  петропавловская крепость собор музей

или для всех расширений:

Мне нужно было это, чтобы изменить все расширения изображений в галерее на нижний регистр. Я закончил тем, что сделал следующее:

Источник

убрать расширение страницы htaccess

Спросил VeniVidiVici,
8 декабря 2016

Вопрос

VeniVidiVici

Как это исправить? думаю прописать редирект вручную для каждой страницы(о_О), типа:

но может, есть более универсальное решение?

Ссылка на комментарий
Поделиться на других сайтах

9 ответов на этот вопрос

Рекомендованные сообщения

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Похожие публикации

Добрый
Имеем одностраничник с несколькими якорями вида https://www.site.ru/#awards
Возможно ли через htaccess и 301редирект привести их к виду https://www.site.ru/#awards/
Спасибо)

Привет!
Хочу зафигачить ЧПУ для страниц, генерируемых фильтром.
Ленивый разработчик (breakdesigns, привет!) ноет, что это мол ему лично это не нужно, писать роутер и вообще никому из его клиентов это не интересно. Хочу свой, с параметрами и разделами.

Допустим, страница
https://www.road.media/filter/avtomagnitoly/?custom_f_24[0]=424d57&custom_f_25[0]=5831
где custom_f_24[0]=424d57 это марка авто BMW
а custom_f_25[0]=5831 это модель авто X1

Притом, могут быть более сложные варианты
https://www.road.media/filter/avtomagnitoly/?custom_f_24[0]=424d57&custom_f_25[0]=5831&custom_f_25[1]=5835
тут отмечены BMW, X1 и X5
в таком случае думаю URL должен быть каким-то таким
https://www.road.media/filter/avtomagnitoly/bmw/x1_x5

Марка тоже может быть не единичной.
Вообще набор значений может быть разным:
https://www.road.media/filter/avtomagnitoly/?custom_f_24[0]=4d657263656465732d42656e7a&custom_f_24[1]=4c616e6420526f766572
тут например
4d657263656465732d42656e7a = Mercedes-Benz
4c616e6420526f766572 = Land Rover

Соответственно, ожидается ссылка вида
https://www.road.media/filter/avtomagnitoly/land_rover_mercedes_benz

Это возможно вообще?

Буду благодарен в помощи, облазил весь интернет ничего не нашел, информацию могу оплатить, в долгу не останусь

Источник

Образовательный портал