Для удаления пробелов и невидимых символов в начале и конце строки в PHP можно использовать комбинацию функции `trim()` и регулярные выражения. Однако, чтобы справиться с различными невидимыми символами, вы можете использовать подход с регулярными выражениями.
Если вы хотите удалить не только обычные пробелы, но и другие невидимые символы, такие как возврат каретки `\r`, перевод строки `\n`, другие пробелы и т.д., попробуйте следующее:
```php
$string = "\r\n Ваш текст здесь \r\n";
// Удаление всех невидимых символов и пробелов в начале и конце строки
$cleanedString = preg_replace('/^[\s\x00-\x1F\x7F]+|[\s\x00-\x1F\x7F]+$/u', '', $string);
echo $cleanedString;
```
В данном коде регулярное выражение `/^[\s\x00-\x1F\x7F]+|[\s\x00-\x1F\x7F]+$/u` удаляет:
- `^` и `$` - начало и конец строки соответственно.
- `[\s\x00-\x1F\x7F]+` - один или более пробельных символов, включая не видимые ASCII символы от `\x00` до `\x1F` и `DEL` (код `\x7F`).
Использование регулярных выражений в данном контексте позволяет более гибко подходить к проблеме, так как некоторые специальные символы могут быть не удалены простым `trim()`.
Если вы используете этот подход, вы сможете удалить большинство нежелательных символов на краях строки.