l'inghippo è che il tuo dato xml è una stringa e la conversione implicita di una stringa in intero avviene sempre in decimale, leading zero presente o meno.... peccato che la tua stringa rappresenti un numero ottale.

Mkdir vuole un numero decimale, con octdec forzi la conversione di base.

Qui puoi vedere la differenza:

Codice PHP:
<?php

 $a
=0777;
 
$b="0777";
 
 echo 
"octdec(0777) -> ".octdec($a);
 echo 
"
"
;
 echo 
"octdec(&quot;0777&quot;) -> ".octdec($b);
 
?>