Поиск совпадений

usergeyv

Знаток
Регистрация
5 Июл 2013
Сообщения
152
Реакции
25
Вот функция для поиска торрентов:
PHP:
function tor($content)
    {
    preg_match_all ('#\[(url|leech)=(.+?\.torrent)\]#is',$content,$preg_array);
if (count ($preg_array[2]) != 0)
{
foreach ($preg_array[2] as $item)
{
if (!(in_array ($item,$this->files)))
{

$this->files[] = $item;
continue;
}
}
}
    }
Как ее применить к шаблону:

HTML:
<код-код/>
<embed src="http://site.ru/84532/original/plumbergame2.swf?1462495454"
      class="item-direct-container resizable afgv-item"
      width="467"
      height="700"
      id="gamefileEmbed"
      name="flash-content"
      align="middle"
      wmode="window"
      allowfullscreen="false"
      allowfullscreeninteractive="false"
      fullScreenAspectRatio=""
      quality="high"
      play="true"
      loop="true"
      menu=""
      allowScriptAccess="never"
      hasPriority="true"
      type="application/x-shockwave-flash"
      pluginspage="http://www.adobe.com/go/getflashplayer"></embed>
<код-код/>
Нужно:
Код:
http://site.ru/84532/original/plumbergame2.swf
 
Последнее редактирование:
Если такой блок только один на странице:
PHP:
<?php

function tor( $content ) {
	preg_match( '#https?://.+?\.swf#is', $content, $preg_array );
	if ( isset( $preg_array[0] ) ) {
		return $preg_array[0];
	}
}

$content = <<<EOT
<код-код/>
<embed src="http://site.ru/84532/original/plumbergame2.swf?1462495454"
      class="item-direct-container resizable afgv-item"
      width="467"
      height="700"
      id="gamefileEmbed"
      name="flash-content"
      align="middle"
      wmode="window"
      allowfullscreen="false"
      allowfullscreeninteractive="false"
      fullScreenAspectRatio=""
      quality="high"
      play="true"
      loop="true"
      menu=""
      allowScriptAccess="never"
      hasPriority="true"
      type="application/x-shockwave-flash"
      pluginspage="http://www.adobe.com/go/getflashplayer"></embed>
<код-код/>
EOT;

var_dump(   tor($content)   );
 
Если такой блок только один на странице:
А как с такого шаблона, если там _p://site.ru/preloader.swf и _p://site.ru/84532/original/plumbergame2.swf?1462495454:
HTML:
 <div id="reklama">
            <object
  classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
  codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0"
  width="540"
  height="580"
  id="afgv"
  class="afgv smart-frame-item-direct-container"
  data-supports-resizing="true"
  data-ratio-tolerant="false"
  align="middle">
  <param name="allowScriptAccess" value="always" />
  <param name="allowFullScreen" value="false" />
  <param name="movie" value="http://site.ru/preloader.swf" />
  <param name="quality" value="high" />
  <param name="bgcolor" value="#ffffff" />
  <embed src="http://site.ru/preloader.swf"
    class="afgv smart-frame-item-direct-container"
    data-supports-resizing="true"
    data-ratio-tolerant="false"
    quality="high" bgcolor="#000000"
    width="540"
    height="580"
    name="preloader"
    align="middle" allowScriptAccess="always"
    allowFullScreen="false"
    type="application/x-shockwave-flash"
    pluginspage="http://www.adobe.com/go/getflashplayer" />
</object>

    <div id="overlay"
  class="overlay container"
  data-supports-resizing="true"
  data-ratio-tolerant="false"
  style="width:540px;height:580px;">
  <div id="loading" class="loading"></div>
</div>


        <div style="position:relative; margin: auto;">
  <embed src="http://site.ru/84532/original/plumbergame2.swf?1462495454"
      class="item-direct-container resizable afgv-item"
      width="467"
      height="700"
      id="gamefileEmbed"
      name="flash-content"
      align="middle"
      wmode="window"
      allowfullscreen="false"
      allowfullscreeninteractive="false"
      fullScreenAspectRatio=""
      quality="high"
      play="true"
      loop="true"
      menu=""
      allowScriptAccess="never"
      hasPriority="true"
      type="application/x-shockwave-flash"
      pluginspage="http://www.adobe.com/go/getflashplayer"></embed>
  </object>
</div>

Хочу на примерах понять что тут писать:
PHP:
preg_match_all ('#\[(url|leech)=(.+?\.torrent)\]#is',$content,$preg_array);
 
Это называется регулярными выражениями. Может тебе проще будет искать не через прописание ссылки, а откуда ссылка начинается, а потом отсекать эту часть. "
embed src=" и до ?
 
Назад
Сверху