prrrrrrr, извините, но Вы бред написали.
Выведите echo $String и посмотрите, что в эту переменную передаёт file_get_contents();
Лучше отредактируйте свой вопрос, напишите, что Вы хотите спарсить, что получить? Вот тогда будет легче подсказать Вам правильное решение.
Пока Ваш код претендует на полное удаление...
prrrrrrr, а что же Вы хотели? Всё правильно, будет ошибка. Почитайте в документации, какие параметры принимает foreach() и что возвращает file_get_contents().
Он ожидает массив, а Вы ему строку подсовываете.
Но если решите добавить категорию, то всё сломается.