Привет, У меня есть эти строки здесь, я пытаюсь извлечь первый абзац, найденный в файле, но это не может вернуть никаких результатов, если не возвращает результаты, которые даже в тегах <p>
нечетны?
$file = $_SERVER['DOCUMENT_ROOT'].$_SERVER['REQUEST_URI']; $hd = fopen($file,'r'); $cn = fread($hd, filesize($file)); fclose($hd); $cnc = preg_replace('/<p>(.+?)<\/p>/','$1',$cn);
Попробуй это:
$html = file_get_contents("http://localhost/foo.php"); preg_match('/<p>(.*)<\/p>/', $html, $match); echo($match[1]);
Я бы использовал разбор DOM для этого:
// SimpleHtmlDom example // Create DOM from URL or file $html = file_get_html('http://localhost/blah.php'); // Find all paragraphs foreach($html->find('p') as $element) echo $element->innerText() . '<br>';
Это позволит вам более надежно заменить часть разметки:
$html->find('p', 0)->innertext() = 'foo';