There is no reason whatsoever why the second should work: \text is for inserting text in a math formula. The fact that \mathrm{\phi} works is just a coincidence, but the result is in no way different from \phi.
–
egregNov 9 '12 at 17:05

2 Answers
2

\varphi is a math symbol and requires math mode. Since \mathrm still "provides" math mode, \varphi doesn't complain. On the other hand, \text (from amstext; loaded by amsmath) is a macro that makes the correct choice in font size when switching to text mode - super convenient when typesetting test in exponents/subscripts. However, it still switches to text mode.

If you which to use \varphi in text mode without having to switch to math mode explicitly, use something like

\newcommand{\textphi}{\ensuremath{\varphi}}

which will allow you to use \textphi in either text or math mode. The \ensuremath conditional switches to math mode only when necessary (when you're in text mode, say).