Перейти к содержимому
La2Base
Главная
ЗагрузкиВикиФорумFAQ
ruen
Регистрация Войти
ГлавнаяФайлыВикиВойти
  • Главная
  • Загрузки
  • Вики
  • FAQ
  • Обратная связь
  • О проекте
  • Правила
  • Конфиденциальность
  • Условия использования

© 2026 la2base.com · Все права защищены

ruen
Форум/Web обвязка/[помощь]php
Поиск

[помощь]php

14 ответов212 просмотровСейчас просматривают: 1
Wh1tePower
Wh1tePower

Пользователь

Ветеран

Постов: 846

На форуме с: 18.09.2007

Репутация: +623

Рейтинг: 0

· 19.01.2009, 04:05

Решил на досуге подучить php , взялся с примера скрипта l2top. Наткнулся на функции strpos и substr , для чего они нужны я в принципе понял , но в одном так и не разберусь... Вот пример строк :

Код
  
$pdata=(substr($l2top,(strpos($l2top,'сервер:<br></th>')+16),strlen($l2top)));
$data=(substr($pdata,(strpos($pdata,'</tr>')+6),(strpos($pdata,'</table>')-22)));
$data=(substr($data,1,strpos($data,'</table>')-8));
$nums=substr_count($data,'<tr>');

В первой строке как я понимаю начинаеться "тело движение" после найденных строк "Сервер:<br></th>" далее как я понимаю число 16 означает отступ (те 16 знаков - номер в списке и ип) далее мы получаем длинну строки(вот тут я чуть чуть не понимаю зачем..). Вторая строчка подгружает первую и добавляет 6 знаков (это понятно - время) , а вот второе -22 - это что и куда ?) Третью строчку вообще не понимаю что она делает , понятно тока что закрывает выполнение чтения с таблицы , но опять же таки что означают цифры 1 и -8. 4 строка видимо выводит полученное.
В общем вопросы думаю ясны , очень надеюсь на Вашу помощь. Строго не судить , я в пхп почти не рублю , учусь вот таким вот макаром...

— La2Psy.ru [ADM]Wh1tePower...

0
xgl
xgl

Пользователь

Участник

Постов: 95

На форуме с: 09.12.2007

Репутация: +176

Рейтинг: 0

· 19.01.2009, 05:00

В первой строчке, мы находим в строке вхождение "Сервер:<br></th>", отсупаем 16 символов и записываем в переменную $pdata остаток строки. А длину строки получаем для того чтобы вырезать до конца (см. параметры функции substr).

Т.е. была, например строчка: "1234567 бла-бла-бла Сервер:<br></th>[еще_16_символов], а это продолжение строки"
Станет ", а это продолжение строки".

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

Войдите и наберите 1 постов

0
Wh1tePower
Wh1tePower

Пользователь

Ветеран

Постов: 846

На форуме с: 18.09.2007

Репутация: +623

Рейтинг: 0

· 19.01.2009, 16:33

Принцип работы понял , но так и не понял откуда вычитаеться 22... Из самого начала этой строки? То есть "1 ххх.ххх.ххх.ххх 14:00:00 19.01.09 Myxaxa" ? Из неё вычитаем 22 остаёться дата и ник , далее удаляеться видимо дата и записываеться только ник :Р Я прав?

— La2Psy.ru [ADM]Wh1tePower...

0
Rem000
Rem000

Пользователь

Бывалый

Постов: 321

На форуме с: 29.01.2008

Репутация: +256

Рейтинг: 0

· 19.01.2009, 17:01

Зачем вообще что то отступать?о0 если парсить можно сразу...
там же вид такой:

Код
                        <tr>
                            <td>9</td>
                            <td>XXX.XXX.XXX.XXX</td>
                            <td>19:07:21 19.01.09</td>
                            <td> </td>
                            <td>fire-Kurik</td>
                       </tr>


а вот парсер:
preg_match_all('#<td>[0-9]{1,2}</td>\s+<td>([X]{3}\.[X]{3}\.[X]{3}\.[X]{3})</td>\s+<td>([0-9]{1,2}\:[0-9]{1,2}\:[0-9]{1,2}\s+[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{1,2})</td>\s+<td> </td>\s+<td>([a-zA-Z0-9 ]{0,})#',$page,$matches)

хотя эт кому как удобне..

— FoBOSS

0
Wh1tePower
Wh1tePower

Пользователь

Ветеран

Постов: 846

На форуме с: 18.09.2007

Репутация: +623

Рейтинг: 0

· 19.01.2009, 18:08

Мне нужно чтоб не парсило , мне нужно в этой байде разобраться , написал же сверху что учусь и разбираю что к чему. И ещё вопросик , чтоб воспринимало все буквы и знаки нужно писать [\s-] так ?

— La2Psy.ru [ADM]Wh1tePower...

0
Rem000
Rem000

Пользователь

Бывалый

Постов: 321

На форуме с: 29.01.2008

Репутация: +256

Рейтинг: 0

· 19.01.2009, 18:20

нет, \s - это регулярное выражение обозначающее пробел или перенос cтроки.

вот почитай:
_http://phpclub.ru/detail/article/regexp_1
_http://phpclub.ru/detail/article/regexp_2

— FoBOSS

0
Wh1tePower
Wh1tePower

Пользователь

Ветеран

Постов: 846

На форуме с: 18.09.2007

Репутация: +623

Рейтинг: 0

· 19.01.2009, 20:51

А на вопрос то ответить можно ?) Я правильно всё понял? Я про второй пост свой :Р

— La2Psy.ru [ADM]Wh1tePower...

0
Сергей
Сергей

Пользователь

Бывалый

Постов: 252

На форуме с: 01.08.2008

Репутация: +47

Рейтинг: 0

· 20.01.2009, 14:49

тебе же ответили)))

вот цитирую: "нет, \s - это регулярное выражение обозначающее пробел или перенос cтроки."

а вообще спасибо что поднял этот вопрос))

— 15

0
Wh1tePower
Wh1tePower

Пользователь

Ветеран

Постов: 846

На форуме с: 18.09.2007

Репутация: +623

Рейтинг: 0

· 20.01.2009, 15:36

Да я не про этот вопрос , а про то что правильно я понял как парсинг там работает или нет

— La2Psy.ru [ADM]Wh1tePower...

0
AbsT
AbsT

Пользователь

Ветеран

Постов: 1514

На форуме с: 10.12.2007

Репутация: +768

Рейтинг: 0

· 20.01.2009, 18:07

Rem000, позволь спросить.
А энто ты через чего такой регэксп сгенерил? O_o
Прям тютелька-в-тютельку, ну не руками-же писал всетаки? )

— &#197;lderdom - ingen gl&#228;dje..

0
Wh1tePower
Wh1tePower

Пользователь

Ветеран

Постов: 846

На форуме с: 18.09.2007

Репутация: +623

Рейтинг: 0

· 20.01.2009, 18:12

А-а-а-а , ну ответьте прально я понял или нет ?)

— La2Psy.ru [ADM]Wh1tePower...

0
Rem000
Rem000

Пользователь

Бывалый

Постов: 321

На форуме с: 29.01.2008

Репутация: +256

Рейтинг: 0

· 20.01.2009, 18:18

Цитата
Rem000, позволь спросить.
А энто ты через чего такой регэксп сгенерил? O_o
Прям тютелька-в-тютельку, ну не руками-же писал всетаки? )


руками

не интерестно, да? XD

— FoBOSS

0
AbsT
AbsT

Пользователь

Ветеран

Постов: 1514

На форуме с: 10.12.2007

Репутация: +768

Рейтинг: 0

· 20.01.2009, 19:19

Цитата
([X]{3}\.[X]{3}\.[X]{3}\.[X]{3})

Вот это напомнило мне софтовую генерацию.
Ну ты просто жжошь...
Чем не проще было сделать как " XXX\.XXX\.XXX\.XXX " ?
Если строка будет типа "Pipec" ты сделаешь ее так-же? [Pp]{1}[Ii]{1}[Pp]{1}...?
Ей богу, не понимаю я тебя russian.gif
Деоптимизация работы php #1, на баш чтоли отправить rofl.gif

— &#197;lderdom - ingen gl&#228;dje..

0
Rem000
Rem000

Пользователь

Бывалый

Постов: 321

На форуме с: 29.01.2008

Репутация: +256

Рейтинг: 0

· 20.01.2009, 19:37

05e811906ebf.gif просто изначально было под ай-пи)) потом, топ закрыл айпишники... вот как то так...
скрипт не работает, естественно задроты орут, и из соображения быстроты было переделано на так, а потом и не вспоминал))))
to_become_senile.gif

— FoBOSS

0
Тема закрыта для ответов