Det "dirname()" egentligen gör är att klippa ut det som står innan filnamnet, alltså strängen innan sista /
Den har alltså absolut ingen koll på filsystemet.
För att göra det du vill tror jag att detta ska funka:
$real_path = realpath("../index.php");
$mappnamn = dirname ($real_path);
Eller om man vill göra det lite kompakt och snyggt:
$mappnamn = dirname(realpath("../index.php"));