そのため、有効な列名に適切なテーブルプレフィックス (「t.」または「r.」など) を自動的に追加するスクリプトを作成しようとしています。
$t_columns = array('id', 'name', 'label');
$r_columns = array('related_value');
入力:
id > 1 AND (name = 'Hello' OR label IN ('World', 'Planet name AND label')) AND (related_value > 1 AND related_value < 50)
出力:
t.id > 1 AND (t.name = 'Hello' OR t.label IN ('World', 'Planet name AND label')) AND (r.related_value > 1 AND r.related_value < 50)
通常のstr_replaceを実行できないことに注意してください。すべてのテーブル名が適切に先頭に追加されるようにするための最も単純なコード (私はpreg_replaceと推測しています) は何でしょうか?