Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Сокращение записи
Форумы портала PHP.SU » PHP » Регулярные выражения » Сокращение записи

Страниц (1): [1]
 

1. Tiger - 14 Сентября, 2011 - 21:37:00 - перейти к сообщению
Добрый день, меня очень волнует вопрос компактности и грамотности кода, поэтому я хочу периодически спрашивать у вас как лучше сократить ту или иную запись, заранее спасибо.
Вот первый вопрос
CODE (htmlphp):
скопировать код в буфер обмена
  1. $pages = GetPages($start_url);
  2. $pages = $pages['1']['0'];
  3. $pages = !(isset($pages)) ? "1" : $pages;


как это максимально сократить и привести к грамотному виду.
2. Мелкий - 14 Сентября, 2011 - 21:40:58 - перейти к сообщению
В текущем виде тут ещё и E_NOTICE присутствует.

PHP:
скопировать код в буфер обмена
  1. $pages = GetPages($start_url);
  2. $pages = isset($pages['1']['0']) ? $pages['1']['0'] : 1;
3. Tiger - 14 Сентября, 2011 - 21:43:08 - перейти к сообщению
Спасибо большое, идем дальше.
PHP:
скопировать код в буфер обмена
  1.         preg_match_all ("/<h1>(.*)<\/h1>/", $content, $title, PREG_PATTERN_ORDER);
  2.         preg_match_all ("/<h2>Регион<\/h2>\n\s+(.*)<br>/", $content, $region, PREG_PATTERN_ORDER);
  3.         preg_match_all ("/<h2>Адрес<\/h2>\n\s+(.*)<br>/", $content, $adress, PREG_PATTERN_ORDER);
  4.         preg_match_all ("/<h2>Телефоны<\/h2>\n\s+(.*)<br>/", $content, $tel, PREG_PATTERN_ORDER);
  5.         preg_match_all ("/<h2>Сайт<\/h2>\n\s+<noindex><a href=\".*\">(.*)<\/a><\/noindex><br>/", $content, $www, PREG_PATTERN_ORDER);
  6.         preg_match_all ("/<h2>Электронная почта<\/h2>\n\s+(.*)<br>/", $content, $email, PREG_PATTERN_ORDER);
  7.         preg_match_all ("/<h2>Руководитель<\/h2>\n\s+(.*)<br>/", $content, $chief, PREG_PATTERN_ORDER);
  8.         preg_match_all ("/<h2>Контактное лицо<\/h2>\n\s+(.*)<br>/", $content, $contact, PREG_PATTERN_ORDER);
  9.         preg_match_all ("/<h2>ИНН<\/h2>\n\s+(.*)<br>/", $content, $inn, PREG_PATTERN_ORDER);
  10.         preg_match_all ("/<h2>Юридическое название<\/h2>\s*(.*\s*.*)\s*<br>/", $content, $legal_name, PREG_PATTERN_ORDER);
  11.         return Array($title['1']['0'], $region['1']['0'], $adress['1']['0'], $tel['1']['0'], $www['1']['0'], $email['1']['0'], $chief['1']['0'], $contact['1']['0'], $inn['1']['0'], $legal_name['1']['0']);


Часть кода парсера

 

Powered by ExBB FM 1.0 RC1