Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Глюк substr, +strripos 
:(
    Опции темы
motorway
  Дата 11.7.2011, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 578
Регистрация: 2.3.2008

Репутация: нет
Всего: 0



На 5 PHP наблюдается странный глюк, когда пробую получить подстроку с помощью substr, предварительно найдя позицию последнего вхождения подстроки с помощью strripos.
Вот текст:
Код


<tr class="productListing-odd"><td class='productListing-data' align='left'><a href='http://www.svetnadom.ru/store/product_info.php?name=Бра__Metal_lux_OTELLO_111102.04&products_id=496'>Бра  Metal lux OTELLO 111102.04</a></td><td class='productListing-data' align='center'><a href='http://www.svetnadom.ru/store/product_info.php?name=Бра__Metal_lux_OTELLO_111102.04&products_id=496'>111102.04</a></td><td class='productListing-data' align='right'><a href='http://www.svetnadom.ru/store/product_info.php?name=Бра__Metal_lux_OTELLO_111102.04&products_id=496'>4.524


Код

$x=file_get_contents('1.txt');

$pos=strripos($x,"'>");
if ($pos!==false)
{
///echo $pos;
$n=$pos+2;
//echo $n;
$y=substr($x,$n);
echo $y;
};
echo $y." руб."."<BR>";



Вот код, который всё это делает.
Но результат 4.524 не получается, а получаем пустую строку.
В чем может быть проблема? Позиция искомой подстроки получается равной 555.

Это сообщение отредактировал(а) motorway - 11.7.2011, 21:19
PM MAIL   Вверх
srt
Дата 11.7.2011, 21:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 13.5.2008

Репутация: нет
Всего: 1



4.524 руб. вывело
ток сначала двойные кавычки в строке на одинарные заменил <tr class="productListing-odd">, мож об них споткнулось?
PM MAIL   Вверх
motorway
Дата 11.7.2011, 22:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 578
Регистрация: 2.3.2008

Репутация: нет
Всего: 0



Смысл был именно в оставлении этой же строки. Могло и об них, но почему? Если переменная берется из файла... Может, дело в памяти? При большой позиции по абс. значению что-то происходит...

Добавлено через 3 минуты и 22 секунды
Вообще уже решил заменить на explode и брать последний полученный элемент. А то в прошлый раз с этим strripos у меня тоже проблемы были
PM MAIL   Вверх
bars80080
Дата 11.7.2011, 23:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 2
Всего: 315



а какая кодировка у текста, в котором ищется?
PM MAIL WWW   Вверх
motorway
Дата 11.7.2011, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 578
Регистрация: 2.3.2008

Репутация: нет
Всего: 0



windows-1251
PM MAIL   Вверх
srt
Дата 12.7.2011, 05:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 13.5.2008

Репутация: нет
Всего: 1



Код

$x = file_get_contents('1.txt');
$x = addslashes($x);
...


Добавлено через 1 минуту и 59 секунд
потому что кавычки это элемент синтаксиса в php

Добавлено через 6 минут и 51 секунду
кстати bars80080 правильно заметил - кодировку нужно устанавливать скрипту обязательно, чтобы не расставлять себе невидимую ловушку :О)
например setlocale(LC_ALL, 'ru_RU.CP1251');
PM MAIL   Вверх
motorway
Дата 12.7.2011, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 578
Регистрация: 2.3.2008

Репутация: нет
Всего: 0



Странно. Я обычно занимался обработкой страниц, не особо обращая внимание есть ли там кавычки - по идее не должно зависеть от этого.
PM MAIL   Вверх
srt
Дата 12.7.2011, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 13.5.2008

Репутация: нет
Всего: 1



таки вопрос решён?
PM MAIL   Вверх
motorway
Дата 12.7.2011, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 578
Регистрация: 2.3.2008

Репутация: нет
Всего: 0



Не знаю, у меня лично не получилось нормально с этим кодом. Почему из-за кавычек вдруг функция по-другому работать должна?

Добавлено через 1 минуту и 8 секунд
Саму подстроку нужную я получил еще вчера с помощью explode (решил по-другому сделать), но с помощью данного кода - нет
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Тексты | Следующая тема »


 




[ Время генерации скрипта: 0.0725 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.