Implementei esta rotina que permite obter um valor de uma sequencia de carateres neste caso estou usano um scanner 2d para ler um QRCODE
Até aqui tudo bem mesmo no PHPTESTER obtendo o valor pretendido
Rotina:
function extrairValorNumericoAposDoisPontos($sequencia) {
// Padrão de busca: tudo após “Ò:” até o próximo “" preg_match("/Ò:([^
]+)/”, $sequencia, $matches);
// Verifica se o padrão foi encontrado
if (isset($matches[1])) {
// Remove qualquer caractere que não seja número ou ponto decimal
return preg_replace("/[^0-9.]/", "", $matches[1]);
} else {
return "Valor não encontrado";
}
}
// Exemplo de uso:
$sequencia = “A:509630421B:128006269
C:PTD:FRÈ:N
F:20241127G:FR U003/117298
H:JFHCCDHY-117298Ì1:PT-MAÌ3:13.35Ì4:0.53N:0.53Ò:13.88
Q:NXvT`R:432”;
$resultado = extrairValorNumericoAposDoisPontos($sequencia);
echo $resultado; // Saída: 13.88
O problema quando pretendo gravar como um novo regsito o suposto 13.88 indica “valor não atribuido” ou simplemente apresenta 0.0
Não consigo perceber o que se passa.Podem ajudar-me. Obrigada