Используя это:
$rank = $xml->{'military'}->rank-points;
PHP будет фактически:
- поиск
$xml->{'military'}->rank
- и попробуйте вычесть значение константы
points
этому значению
- если константа не существует, она будет использовать строковое значение
"points"
.
Пытаясь выполнить ваш код, вы должны получить уведомление с указанием того, что я сказал:
Notice: Use of undefined constant points - assumed 'points'
Чтобы решить эту проблему, попробуйте , добавив {''}
вокруг имени вашего тега :
$rank = $xml->{'military'}->{'rank-points'};
Таким образом, PHP будет знать, что rank-points
- это одно, а не вычитание.