Avatar ·

Como verificar rapidamente se uma string é JSON em PHP?

Olá a todos! Sou um desenvolvedor PHP iniciante e me deparei com um problema. Frequentemente em projetos preciso receber dados de API ou de formulários onde chega uma string que pode ser JSON ou pode ser texto comum. Preciso determinar se essa string é um JSON válido, e o mais rápido possível, porque haverá muitas dessas verificações. Atualmente uso esta abordagem: ```php function isJson($string) { json_decode($string); return (json_last_error() == JSON_ERROR_NONE); } ``` Mas ouvi dizer que não é a maneira mais rápida e que existem métodos mais eficientes. Estou preocupado com os seguintes pontos: 1. Quão lento é `json_decode` para strings grandes? 2. Existe uma maneira de verificar a string sem fazer o parsing completo? 3. O que fazer se a string for apenas um número ou `true`? Pois `json_decode` retornará sucesso para esses valores, embora não seja um objeto ou array JSON. 4. É necessário considerar casos específicos, como JSONs muito grandes (megabytes)? Quero encontrar uma solução que seja r