Bul ve Mağaza (Regex, PHP)

1 Cevap php

Ben $posttags dizi ile bir yazı üzerinde kullanılan etiketlerin listesini kapma ediyorum. Bu orada ayrı ayrı saklamak istediğiniz özel bir etiket bulunuyor: profile-somename.

Nasıl yaparım:

  1. Listeden bu özel profile-somename etiketi (profile- dinamik sonra değeri, somename sadece bir örnek, sürekli değişiyor) bul
  2. Şerit profile- ondan ve
  3. Ayrı bir değişkende saklamak?

Yardımlarınız için çok teşekkürler.

1 Cevap

gibi

$tags = array('foo', 'bar', 'profile-blah');
$found = preg_grep('~^profile~', $tags);
if($found)
   $profile_name = substr(end($found), strlen('profile-'));

Tamam, biz nesneleri bir dizi var çıkıyor. preg_grep onunla çalışmaz, böylece döngü vardır

function find_profile_name($posttags) {
   foreach($posttags as $tag)
      if(preg_match('~^profile-(.+)~', $tag->slug, $m))
          return $m[1];
   return null; // no profile-... found
}