---
мне нужно найти строку "12345" Как это можно сделать на php?
Сначала, по идее, я должен найти "TRANSACTION_NUMBER" так:
if (ereg("PAYMENT_BATCH_NUM",$buffer)){...Нашли...}
А потом как найти значение "12345"?
---
> мне нужно найти строку "12345" Как это можно сделать на > php? > Сначала, по идее, я должен найти "TRANSACTION_NUMBER" так: > if (ereg("PAYMENT_BATCH_NUM",$buffer)){...Нашли...} > А потом как найти значение "12345"? > > Спасибо.
> preg_match_all("/TRANSACTION_NUMBER[\s\n\r\t]+value=\"(.*)\ > ">/simU", ,join('',$html_text), $result); > > в $result[1] - будет массив твоих найденных значений > (12345) > > З.Ы. Лучше под себя переделай - пример далек от идеала.
Ошибку выдает parse error, unexpected ',' . Может где запятая лишняя? А потом $html_text должен быть массивом, но у меня это не массив ведь а строка. Можно как-то упростить пример?
> > > > preg_match_all("/TRANSACTION_NUMBER[\s\n\r\t]+value=\"(.*)\ > > ">/simU", ,join('',$html_text), $result); > > > > в $result[1] - будет массив твоих найденных значений > > (12345) > > > > З.Ы. Лучше под себя переделай - пример далек от > идеала. > > Ошибку выдает parse error, unexpected ',' . Может где > запятая лишняя? А потом $html_text должен быть массивом, но > у меня это не массив ведь а строка. Можно как-то упростить > пример?
$html_text - если ты его достал с помощью file(), то он массив строк. Так обычно делают, поэтому я join и написал.
int preg_match_all ( string pattern, string subject, array matches [, int flags])
Вот неплохой пример из хелпа:
<?php
// The \\2 is an example of backreferencing. This tells pcre that
// it must match the second set of parentheses in the regular expression
// itself, which would be the ([\w]+) in this case. The extra backslash is
// required because the string is in double quotes.
$html = "bold text<a href=howdy.html>click me</a>";
> мне нужно найти строку "12345" Как это можно сделать на php if (($pos = strpos('TRANSACTION_NUMBER')) !== false) {
нашли и вырезали с помощью substr, не забываем что в $pos храниться позиция строки 'TRANSACTION_NUMBER'
}