Sí eso es lo que buscaba, entonces, este código haría lo mismo no?
Crearía un valor del array $projects en los campos definidos con $id?
Al pasar a otro campo del xml, no sé si funcionaría igual.
Código:
foreach ($xmlprojects->project->id as $proj => $id) {
$projects[$id] = $proj -> id;
}