hmm.... sorry wenn ich nerve, aber irgendwie will es nicht:
preg_match_all("(<table.*?>(<tr>.*?</tr>)</table>)", $content, $loops);
(<tr>.*?</tr>)
Wörtlich: Finde genau ein <tr>....</tr> Container unabhängig dessen, was sich inenrhalb befindet.
Du willst jedoch beliebig viele solche Container finden. Ergo fehlt ein Quantifier.
mfg Beat