Коллеги,
Очередное затруднение.
Нужно убрать последний символ в строке на PHP. Он может быть любым.
В Перле я это делал chop-ом.
>Коллеги,
>Очередное затруднение.
>Нужно убрать последний символ в строке на PHP. Он может быть любым.
>
>В Перле я это делал chop-ом.Например, вот так:
<?
$str="asdfgh";
echo substr($str, 0, strlen($str)-1);
?>
или так:
<?
$str="asdfgh";
echo preg_replace("/(.*).$/", "\\1", $str);
?>
Ага. Спасибо!
Работают оба варианта.>Например, вот так:
><?
>$str="asdfgh";
>echo substr($str, 0, strlen($str)-1);
>?>
>или так:
><?
>$str="asdfgh";
>echo preg_replace("/(.*).$/", "\\1", $str);
>?>
>Коллеги,
>Очередное затруднение.
>Нужно убрать последний символ в строке на PHP. Он может быть любым.
>
>В Перле я это делал chop-ом.Возможно, rtrim поможет. Эта функция удалят все пробельные символы из конца строки. Чаще всего именно это и нужно.
Вот здесь можно посмотреть все функции обработки строк, какие есть в PHP:
>Возможно, rtrim поможет. Эта функция удалят все пробельные символы из конца строки.
>Чаще всего именно это и нужно.
>В том, то и дело, что мне не пробелы и конец строки нужно было отрезать...
Например, вот так:
<?
$str="asdfgh";
echo substr($str, 0, strlen($str)-1);
?>если работаешь с руским утф, то надо учитывать, что одна русская буква может быть длинной до 3х байт, и в итоге отрежется не последняя буква, а убьется байт буквы и выведится последний символ иероглифом
> Например, вот так:
> <?
> $str="asdfgh";
> echo substr($str, 0, strlen($str)-1);
> ?>
> если работаешь с руским утф, то надо учитывать, что одна русская буква
> может быть длинной до 3х байт, и в итоге отрежется не
> последняя буква, а убьется байт буквы и выведится последний символ иероглифомкак решить эту проблему?
mb_substr ?
>> Например, вот так:
>> <?
>> $str="asdfgh";
>> echo substr($str, 0, strlen($str)-1);
>> ?>
>> если работаешь с руским утф, то надо учитывать, что одна русская буква
>> может быть длинной до 3х байт, и в итоге отрежется не
>> последняя буква, а убьется байт буквы и выведится последний символ иероглифом
> как решить эту проблему?RTFM
<?php
$dir = 'antiques/Accessories/Clothing/'; // Папка с изображениями
$ar=array();$name = scandir($dir);
$parts = pathinfo($img);
$cols = 3; // Количество столбцов в будущей таблице с картинками
$files = scandir($dir); // Берём всё содержимое директории
echo "<table>"; // Начинаем таблицу
$k = 0; // Вспомогательный счётчик для перехода на новые строки
for ($i = 0; $i < count($files); $i++) { // Перебираем все файлы
if (($files[$i] != ".") && ($files[$i] != "..")) { // Текущий каталог и родительский пропускаем
if ($k % $cols == 0) echo "<tr>"; // Добавляем новую строку
echo "<td width='220' align='center'>"; // Начинаем столбец
$path = $dir.$files[$i]; // Получаем путь к картинке
echo "<a href='$path'>"; // Делаем ссылку на картинку
echo "<img src='$path' width='200' height='200' />"; // Вывод превью картинки
echo "$name[$i]";
echo "</a>"; // Закрываем ссылку
echo "</td>"; // Закрываем столбец
/* Закрываем строку, если необходимое количество было выведено, либо данная итерация последняя */
if ((($k + 1) % $cols == 0) || (($i + 1) == count($files))) echo "</tr>";
$k++; // Увеличиваем вспомогательный счётчик
}
}
echo "</table>"; // Закрываем таблицу?>
Ребят, помогите плиз, вывожу файлы из каталога с названиями, надо обрезать разширение .jpg
как это сюда вкрячить?
в смысле, что бы название под картинкой было без .jpg