Должны ли следующие URL-адреса считаться функционально эквивалентными?
http://example.com/foo?a=&b=
http://example.com/foo?a&b
Это произошло, когда пользователь модуля Drupal, который я написал, который анализирует и затем переписывает URI заметил , что код иногда вызывает неожиданное изменение частей строки запроса из-за того, как некоторые из лежащих в основе PHP функции ведут себя. Например:
parse_str("a&b", $values); print http_build_query($values);
a=&b=
Стоит ли мне беспокоиться об этом?
Редактировать, чтобы SO перестал жаловаться, что этот вопрос похож на другой: вопрос в том, можно ли считать, что «нет значения для X» и «пустое значение для X» эквивалентны, а не в стиле «нет значения» синтаксически правильно (что это такое).