Привет, Гость!
Главная
Вход

Последняя активность

Форум / Вопросы и ответы / Вопросы по PHP и MySQL
Поиск
  Отсеять расширение
Chifty Chifty [Off] [#] (08.09.2018 / 14:28)
Добавлено: 08.09.2018 / 14:20
Короче надо в переменную отсеять название файла без расширения.
Наговнокодил следующее:
  1. $old_name = $res_file_more['name'];
  2. $ext = explode(".", $old_name);
  3. $new_file = reset($ext);

Но оно не показывает дальше первой точки. например File-V1.0.6.exe
Как отрезать только расширение? Напишите за меня, пожалуйста

Добавлено: 08.09.2018 / 14:28
Сделал вот так:
  1. $old_name = $res_file_more['name'];
  2. $ext = explode(".", $old_name);
  3. $new_file = basename($old_name, "." . end($ext));

Скажите, можно попроще как-нибудь?
Изм. Chifty (08.09.2018 / 14:20) [1]
kantry kantry [Off] [#] (08.09.2018 / 18:43)
Chifty, Ты какие то термины подбираешь оригинальные(отсеять)
У тебя же уже есть массив с именем и расширением
  1. $ext = explode('.', 'file_name.ext');
  2. $ext = [0 => 'file_name', 1 => 'ext'];

Изм. kantry (08.09.2018 / 18:44) [1]
Chifty Chifty [Off] [#] (08.09.2018 / 19:15)
так а если в имени есть другие точки?
мне нужно конкретно последнее .ехт отрезать
kantry kantry [Off] [#] (08.09.2018 / 19:43)
Chifty, Так ты вопрос непонятно задаешь, из строки или из реального файла? Из реального файла pathinfo() есть, плюс куча констант к нему))
PATHINFO_DIRNAME, PATHINFO_BASENAME, PATHINFO_EXTENSION, PATHINFO_FILENAME
Из строки strrpos + substr
Изм. kantry (08.09.2018 / 19:45) [1]
ДоХтор ДоХтор (Adm) [Off] [#] (08.09.2018 / 19:52)
* (+/-)
* (+/-)

Изм. ДоХтор (09.09.2018 / 10:52) [3]
Koenig Koenig (Adm) [Off] [#] (09.09.2018 / 12:09)
(\/)____o_O____(\/)
http://php.net/manual/ru/splfi ... n.php
Eternal Eternal [Off] [#] (31.12.2018 / 00:38)
ДоХтор, Ему надо отрезать расширение а не получить его
Изм. Eternal (31.12.2018 / 00:38) [1]
Eternal Eternal [Off] [#] (31.12.2018 / 00:41)
# Chifty (08.09.2018 / 14:28)
Короче надо в переменную отсеять название файла без расширения.
Наговнокодил следующее:
$old_name = $res_file_more['name'];
$ext = explode(".", $old_name);
$new_file = reset($ext);
Но оно не п

  1. //$filepath путь до твоего файла
  2. $fileName = basename($filePath);
  3. $fileNameNoExtension = preg_replace("/\.[^.]+$/", "", $fileName);
  4. echo $fileNameNoEXtension;

Это удаляет из последнего периода . до конца строки.

В принципе как дохтор выше написал
Изм. Eternal (31.12.2018 / 00:46) [5]
ДоХтор ДоХтор (Adm) [Off] [#] (31.12.2018 / 00:48)
# Eternal (31.12.2018 / 00:38)
ДоХтор, Ему надо отрезать расширение а не получить его
А я что написал во втором спойлере?
ramzes ramzes [Off] [#] (31.12.2018 / 09:23)
# kantry (08.09.2018 / 19:43)
Chifty, Так ты вопрос непонятно задаешь, из строки или из реального файла? Из реального файла pathinfo() есть, плюс куча констант к нему))
PATHINFO_DIRNAME, PATHINFO_BASENAME, PATHINFO_EXTENSION, PA
все кто ниже этого поста, вы извращенцы что ли?)
Chifty Chifty [Off] [#] (11.01.2019 / 22:16)
ramzes, А как тогда "правильно" делать?
Krite Krite [Off] [#] (12.01.2019 / 14:45)
  1. $info = new SplFileInfo('file.v5.txt');
  2. echo $info->getBasename('.txt');

или
  1. $info = new SplFileInfo('/path/to/file.v5.txt');
  2. echo $info->getBasename('.txt');

если не извесно расширение
  1. $info = new SplFileInfo('/path/to/file.v5.txt');
  2. echo $info->getBasename('.'.$info->getExtension());

или
  1. $info = new SplFileInfo('file.v5.txt');
  2. echo $info->getBasename('.'.$info->getExtension());

Изм. Krite (12.01.2019 / 14:48) [2]
  Всего: 12

Фильтр по автору
Скачать тему

Форум

Новые вверху
Главная
0 / 161

JohnCMS 7.1.0

Яндекс.Метрика
© JohnCMS