"не понятно что содержится в $arRead если ссылки нет - эта переменная пустая или имеет значение отличное от http://mysite.ru/help/articles/view/nazvanie_stati/" - переменная пустая.
"Если она пустая то зачем разбивать на массив и т.д., если проще проверить возвращенное булево значение?" - имеете ввиду так if (isset($arRead))?
"то каким образом последний элемент полученного массива может определять есть ли или нет ссылки?" - если верно понимаю, тогда лучше убрать условие if (isset($EndRead)), вместо него сделать
if (isset($arRead)):?>
<?$arReadCode = explode("/", $arRead);
$arReadCodeNew = array_pop($arReadCode);
$EndRead = end($arReadCode);?>
Т.е. если ссылки есть, тогда производить разбивку по /