Для того чтобы при открытии файла с помощью функции `fopen()` и последующем его чтении с помощью `fread()` маркеры в угловых скобках `<...>` сохранялись и отображались корректно, вам нужно убедиться, что вы правильно обрабатываете вывод данных в вашем скрипте PHP.
Проблема, с которой вы столкнулись, может быть связана с тем, что данные выводятся непосредственно в браузер. Если вы выводите HTML-код, в котором есть маркеры `<...>`, браузер воспринимает их как HTML-теги и не отображает их как текст. Для того чтобы это исправить, вам следует использовать функцию `htmlspecialchars()` для экранирования специальных символов, чтобы они отображались в виде текста.
Вот как можно изменить ваш код, чтобы решить эту проблему:
```php
$readfilename = $_SERVER['DOCUMENT_ROOT'].'/upload/'.$newFileName;
$file = fopen($readfilename, "rt") or die("Unable to open file!");
$content = fread($file, filesize($readfilename));
fclose($file);
// Экранирование специальных символов для правильного отображения
echo nl2br(htmlspecialchars($content));
```
В этом коде:
- `htmlspecialchars($content)` преобразует специальные символы в экранированные. Например, `<` будет заменен на `<`, а `>` — на `>`.
- `nl2br($content)` добавляет HTML-теги `<br />` перед каждой новой строкой, чтобы сохранять форматирование.
Теперь, когда вы будете выводить содержимое файла, маркеры в угловых скобках будут отображаться верно, как текст, а не как HTML-теги.