Как работать со строками в PHP?
Всем привет! Я новичок в PHP и столкнулся с проблемой при работе со строками. Мне нужно выполнить несколько операций: обрезать пробелы, заменить подстроку и проверить, содержит ли строка определённое слово. Я пробовал использовать функции trim(), str_replace() и strpos(), но результаты не соответствуют ожиданиям.
Вот пример моего кода:
$string = ' Привет, мир! Это тестовая строка. ';
$trimmed = trim($string);
echo $trimmed; // Выводит 'Привет, мир! Это тестовая строка.'
$replaced = str_replace('мир', 'PHP', $trimmed);
echo $replaced; // Выводит 'Привет, PHP! Это тестовая строка.'
$position = strpos($replaced, 'тестовая');
if ($position !== false) {
echo 'Слово найдено на позиции ' . $position;
} else {
echo 'Слово не найдено';
}
// Ожидаю: 'Слово найдено на позиции 14' (после замены)
// Получаю: 'Слово найдено на позиции 0'
Проблема в том, что strpos() возвращает 0, хотя слово 'тестовая' явно есть в строке после замены. Я читал, что strpos может возвращать false или 0, но здесь слово точно присутствует. Что я делаю не так? Может, нужно использовать mb_strpos() для кириллицы? Или есть более правильный способ проверки наличия подстроки? Буду благодарен за советы и примеры.