Symfony 1.4 と Doctrine 1.2 のプロジェクトを実行していますが、DB 呼び出しの 1 つで出力エスケープに問題があります。
問題は、Doctrine クエリで PHP オブジェクトを取得するのではなく、PHP の配列を取得することです。私がこれを行っている理由はまったく別のトピックです。PHP オブジェクトを取得することは解決策ではないとだけ言っておきましょう。基本的に、クエリは 2 つのドクトリン モデル間の内部結合です。モデル 1 はモデル 2 と内部結合し、生成された結果は次のようにアクセスできます。
foreach($results as $result)
{
echo $result['field1']; // accessing results for model 1
echo $result['model2']['field1']; // accessing results for model 2 (this inner joins with the model)
}
上記の例、より具体的には model2 の場合、field1 は HTML マークアップで構成されており、当然出力エスケープされています。HTML マークアップをそのままレンダリングする必要があります。問題はどこにあるのか、
これがレギュレーション Doctrine オブジェクトである場合、単純な $modelObject->getRawValue()->getField(); エスケープせずに HTML マークアップをレンダリングします。HTML マークアップを PHP 配列でレンダリングする方法がわかりません。
ありがとう