Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[13.58.182.39] |
|
Сообщ.
#1
,
|
|
|
Два вопроса.
1. Как открыть файл на другом сервере и загнать его в свою переменную. 2. Сохранить информацию полученную с помощью регулярного выражения. Я читал, что сохраняется с помощью скобок, в переменную /1, /2 ... А вот где эти переменные найти?!? <? $fo = fopen("http://www.cnews.ru/news/line/subtypes/software/index.shtml", "r"); $fr = fread($fo, 106700800); // Не хочет ... $id = Array(); $yes = "-"; preg_match_all("/[025]{4}?[0-9]{2}?[0-9]{2}?([0-9]{5,7})/i", $fr, $x); for($i=0;$i<count($x[0]);$i++){ if(substr($x[0][$i], 3, 1) == "5"){ $z = trim(substr($x[0][$i], 8)); for($q=0;$q<count($id);$q++){ if($id[$q]==$z){$yes = $z; break;}else{$yes = "-";} } if($yes == "-"){ $id[] = $z; } } } for($i=0;$i<count($id);$i++){ print "$id[$i] <br>\n"; } ?> |
Сообщ.
#2
,
|
|
|
Цитата CERBER @ Я читал, что сохраняется с помощью скобок, в переменную /1, /2 ... А вот где эти переменные найти?!? http://se.php.net/PCRE PHP FAQ: Регулярные выражения. Добавлено ftp://217.107.209.40/Friedl.-.Regulyarniye.virajeniya.%5B7,5MB%5D%5BNetz.ru%5D.rar |
Сообщ.
#3
,
|
|
|
1. Если разрешен allow_url_fopen в php.ini, то
$data = file_get_contents('proto://host.domain.zone/path/filename.ext'); Если нет, но есть cURL, то лучше воспользоваться им, см. cURL (примеры можно найти там же). Наконец, если нет cURL, то можно с помощью сокетов или fsockopen, см. Сокеты и fsockopen(). 2. Читать про preg_match_all, обратить внимание на использование констант, определяющий порядок вхождений в массиве. |
Сообщ.
#4
,
|
|
|
SiMM
Цитата Это я уже читал. Тут нет ответа на мой вопрос:http://se.php.net/PCRE PHP FAQ: Регулярные выражения. Цитата ... сохраняется с помощью скобок, в переменную /1, /2 ... А вот где эти переменные найти?!? Trustmaster Все работает, спасибо. И последний вопрос: Цитата ... сохраняется с помощью скобок, в переменную /1, /2 ... А вот где эти переменные найти?!? |
Сообщ.
#5
,
|
|
|
Точнее в переменные $1, $2,.. $n или \\1, \\2,.. \\n. Это для функции preg_replace. А в preg_match и preg_match_all вхождения заполняют массив $matches (третий аргумент функции), а вот каким образом - уже зависит от вышеупомянутых констант. В мане по PCRE и вправду все написано
|
Сообщ.
#6
,
|
|
|
Цитата ПонятноТочнее в переменные $1, $2,.. $n или \\1, \\2,.. \\n. Это для функции preg_replace. Цитата Как ни странноя это и использовал ... но тогда не получалось, всю строку выводил, а сейчаз работает ... глюки ...А в preg_match и preg_match_all вхождения заполняют массив $matches (третий аргумент функции), а вот каким образом - уже зависит от вышеупомянутых констант. В мане по PCRE и вправду все написано Спасибо. Вопрос закрыт. |