Если именно используя while, то можно:
Если массив исходный не нужен, то с помощью array_shift()
Если нужен массив исходный или вариант с array_shift() не нравится, то работать с указателями.
Если 100% известно, что массив всегда будет содержать только индексы от нуля без пропусков, то получать доступ к данным индекса с помощью переменной-счётчика (но лично я бы так не делал…я - параноик).
Ранее, до цикла, создать переменную $num со значением 0. Затем, в цикле, проверять, больше ли значение значения $num. Если больше, то записывать это значение в $num. Если нужно и ключ знать, то и ключ записать куда-нибудь.
А если есть просто задача найти большее значение, не важно, каким способом, то для подобного, на сколько я помню, есть готовые функции в PHP.
Я бы и кодов понаписывал, да со Смарта неудобненько.
З. Ы. Может есть варианты и получше, подождём, что предложат.