En la programación del servidor PHP, las solicitudes GET / POST codificadas en URL se analizan en el tipo asociativo "array" al recibirlas. Durante la mayor parte del tiempo, se puede suponer que los argumentos de consulta son cadenas, sin embargo, a veces, ciertos argumentos de consulta se analizan en matrices anidadas.
Por ejemplo:
query.php?a=123&b[]=456&b[]=789
se analiza como
[ 'a'=>"123", 'b'=>["456","789"] ]
Como muchas funciones en PHP son tolerantes a fallos en formas extremadamente inesperadas, me gustaría preguntarle la experiencia de este sitio: ¿es generalmente aceptable rechazar las consultas sin cadenas, evitarlas tanto como sea posible y usarlas? ¿Prefieres los parámetros de consulta?
Además, ¿cuáles son algunas de las prácticas de programación recomendadas a este respecto?
Razón para preguntar
Recientemente, vi un video de YouTube, en el que alguien usó un esquema criptográfico de cosecha propia para verificar el comando de shell controlado por el cliente. Utilizó un nonce en el argumento POST para hmac con la cadena de comando. Cuando el nonce es una matriz, la función hmac tiene éxito verbalmente y se omite la seguridad. Se origina a partir de una imagen de twitter que dice aproximadamente "este código PHP contiene un error mortal".
Actualización
En esencia, he querido preguntar, ¿cuáles son los patrones generales 'sanos' de la cadena de consulta? Dado que esto sería demasiado amplio y en su mayoría basado en la opinión, solo debería incluirse como notas laterales en las respuestas.