Как обойтись в данной случае без goto?
если у вас задача - выйти из цикла, то можно использовать break:foreach ($items as $value) {
    if (условие) break;
}
Не увидел тут goto, но вам лучше вообще забыть про этот оператор.
А кто мешает вам вызвать exit в любом месте?
php.net/manual/ru/control-structures.break.php