Код СОД: Заплати за это позже Заметка
The Daily WTF на русском

Код СОД: Заплати за это позже

Росс был поручен написать программное обеспечение для интеграции с платежным шлюзом кредитной карты, который использовал XML для обмена данными. Платежный шлюз был сравнительно небольшим и не имел опубликованной схемы документа, но предоставлял примерный код для разбора своих XML-сообщений. В примерном коде использовалась функция под названием fetch_data для извлечения данных из XML-ответов. Однако функция fetch_data была плохо реализована, используя множество подстрок для разбора XML-документа, не учитывая его структуру. Это делало функцию хрупкой и неспособной работать с вложенными тегами, атрибутами или самозакрывающимися тегами. Функция также позволяла извлекать произвольные и недопустимые фрагменты документа. a better approach would be to use PHP's built-in XML parsing classes, which would provide a more robust and maintainable solution. The current implementation may not even offer any performance benefits due to the multiple linear searches through the document. The use of a fragile and limited parsing approach can lead to maintenance issues and difficulties in handling valid XML documents. The implementation is an example of a poorly designed solution that can cause problems in the long run. The author of the code seems to have taken a simplistic approach to parsing XML, which is not suitable for handling complex XML documents.