Ваши операторы echo должны заканчиваться ;
$file = 'hotspots.xml';
$xml = simplexml_load_file($file);
$var = $xml->xpath("//hotspot[@name='hs2']");
if (isset($var)) {
echo 'does exist';
} else {
echo 'does not exist';
}
Кроме того, тип возврата $xml->xpath
является массивом, и когда выражение xpath не находит результатов, оно возвращает пустой массив.
Когда он возвращает пустой массив, isset($var)
будет истинным и даст вам does exist
, что неверно.
Один из вариантов может заключаться в использовании count проверить, содержит ли массив более 0 элементов:
if (count($var) > 0) {