2017-10-26 12 views
0

私は現在PropelのCMSを再構築中です。私は現在、私たちのデータベースからいくつかのボディを取得する関数を持っていますが、私は$ i変数に基づいて必要なものを得るのに苦労しています。次のように

機能は次のとおりです。

for ($i = 0; $i < $item->getColumns(); $i++) { 
    if (strlen(strip_tags(stripslashes($item->getBody1()))) > 100) { 
     $body = strip_tags(stripslashes(substr(strip_tags($item->getBody$i()), 0, strpos(strip_tags($item->getBody.$i()), ' ', 100)))) . ' ...'; 
    } else { 
     $body = stripslashes($item->getBody.$i()); 
    } 
} 

機能であなた上記参照コード$アイテム - > getBody1()。関数が$ i変数を使用して目的のボディを取得するようにします。たとえば、$ i = 2の場合、getBody関数は$ item-> getBody2()でなければなりません。

$ item-> getBody。$ i()を使用しようとしましたが、動作しません。これを作る方法はありますか?

ご協力いただきましてありがとうございます。

答えて

1

これはPropelでは問題ありませんが、PHPでは問題ありません。代わりに使用したの

$item->getBody$i(); 

用途:

$getIthBodyMethod = 'getBody' . $i; 
$item->$getIthBodyMethod(); 

PHP manual on variable methods

+0

おかげで、私はすでに出て自分昨日しかし、おかげでとにかくそれを見つけた:) –

関連する問題