public function getTableForeignKeys($table)
{
$foreign_keys = array();
foreach (Yii::app()->db->createCommand('show create table ' . mysql_escape_string($table))->queryAll() as $row) {
foreach (explode(chr(10), $row['Create Table']) as $line) {
if (preg_match('/CONSTRAINT `(.*?)` FOREIGN KEY \\(`(.*?)`\\) REFERENCES `(.*?)` \\(`(.*?)`\\)/', $line, $m)) {
$foreign_keys[] = array('name' => $m[1], 'field' => $m[2], 'remote_table' => $m[3], 'remote_field' => $m[4]);
}
}
}
return $foreign_keys;
}