Preg_replace ve Capture Değer?

0 Cevap php

Ben Wordpress bir filtre eklentisi inşa ediyorum ve html bit ile bazı eklenti özel etiketleri yerine gidiyorum.

Örnek: [VİDEO ID = 12] Bu işlevde preg_replaced ile değiştirilir

function display_video($text){

   $pattern = '/\[VIDEO ID\=\d+\]/';

   $text=preg_replace($pattern,get_video_block($id),$text);

   return $text;
}

Ben her yerine geçtiği için benim get_video_block işlevine doğru ($ id) param tedarik emin olmak için nasıl tam olarak emin değilim.

Hiçbir gerçek döngü yani, nasıl ben bu değeri arz ederim preg_replace işlevinin içine başka orada oluyor?

Düşünceler?

EDIT (get_video_block) fonksiyonu:

function get_video_block($id){
    global $wpdb;
    $wpdb->show_errors();
    $table_name = $wpdb->prefix . "video_manager";
    $query = "SELECT * FROM " . $table_name . " WHERE `index` = '$id'"; 
    $results = $wpdb->get_results($query, ARRAY_A);

    $results = $results[0];

    $returnString = '<div class="vidBlock">';
        $returnString .= $results['embed_code'];

        $returnString .= '<div class="voteBar">';
            $returnString .= $results['vote_text'];
            $returnString .= '<input type="button" value="YES" class="voteButton">';
            $returnString .= '<input type="button" value="NO" class="voteButton">';
        $returnString .= '</div>';

        $returnString .= $results['title'] . '<br>';
        $returnString .= $results['description'] . '<br>';

    $returnString .= '</div>';

    return $returnString;

}

0 Cevap