2011-05-03 72 views
1

我使用symfony 1.4.11和doctrine。我有幫手:Symfony幫手和數據庫

function filterwords($text){ 

    $filterWords=array ('some','filter','words'); 
    $filterCount = sizeof($filterWords); 
     for($i=0; $i<$filterCount; $i++){ 
     $text = preg_replace('/\b'.$filterWords[$i].'\b/ie',"str_repeat('*',strlen('$0'))",$text); 
             } 
     return $text; 
           } 
    } 

所有的工作正常。但是我想創建模塊,管理員可以添加單詞以從後端進行過濾。是否可以從數據庫中的數據傳輸到varaible $ filterWords我有下面的模式:

Filter: 
    actAs: 
    Timestampable: ~ 
    connection: doctrine 
    tableName: filter 
    columns: 
    word: {type: string(255), notnull: true} 

我可以在助手這樣的事情,並得到字我需要什麼:

$record = Doctrine_Core::getTable('Filter')->getWordFilter(); 

foreach ($record as $filter) 

    { 
echo $filter ->getWord(); 
    } 

但我不知道如何實現它我的功能...

對不起,我的英語不好。

回答

0

我不知道現在是不是正確的,但它的工作。

function filterwords($text){ 
    $record = Doctrine_Core::getTable('Filter')->getWordFilter();// 

    foreach ($record as $filter) 
    { 
     $filterWords[] = $filter->getWord(); 
    } 
     $filterCount = sizeof($filterWords); 
     for($i=0; $i<$filterCount; $i++){ 
     $text = preg_replace('/\b'.$filterWords[$i].'\b/ie',"str_repeat('*',strlen('$0'))",$text); 
             } 
     return $text; 
           } 
1

只是通過$filterwords作爲一個變量:

function filterwords($text, $filterwords) 
{ 
    //etc. 
0
field = the column name that contains a value you're searching by. 

$record = Doctrine_Core::getTable('Words')->findOneByField($value); 
$filterWords = $record->getWord(); 
+0

謝謝你,但我不知道這是什麼,我需要......我可以讓'$記錄= Doctrine_Core :: getTable(「字」) - > findOneBy(「字」,'一些過濾器'';'但是我需要從數據庫獲取所有數據並將其傳遞給我的$ filterWords,但也許我錯了... – denys281 2011-05-04 09:52:48

+0

好的...主要的是你有它的工作。 – Tom 2011-05-04 16:52:55