Sorry, lät inte alla hjärnceller vara med där. Felet är visserligen inte TextEdits, utan opens. Så som jag formulerade mig kommer open att köras som root, men sen körs programmet ifråga som den vanliga användaren. Lösningen blir att göra som i mitt första förslag och helt enkelt ange hela sökvägen, ända ner i programpaketet:
sudo -b /Applications/TextEdit.app/Contents/MacOS/TextEdit php.ini
(Flaggan -b anger att jobbet ska ske i bakgrunden, det är ju inte så lämpligt att använda &, eftersom man ska ange sitt lösenord.)
Om man ofta redigerar filer av den här typen kan man ju definiera ett alias för att effektivisera lite, eller varför inte helt enkelt lära sig en av de kommandolinjebaserade texteditorerna (vi, emacs, nano). Det finns också en del grafiska editorer som kommer med ett kommandolinjeprogram (SubEthaEdit, TextMate, BBEdit m.m. Ex: see php.ini öppnar filen i SubEthaEdit.) Slutligen kan man väl även använda sig av ett program i stil med Pseudo som hjälper en med att öppna program som root. (Finns nog även freeware-alternativ.)