PDF — Как декодировать знак минус в PHP после pdftotext

Я пытаюсь преобразовать строку с отрицательным числом в целое число.

Я преобразовал PDF-файл в текстовый файл, используя pdftotext, После выполнения регулярных выражений у меня есть несколько строк, которые мне нужно преобразовать в целые числа в PHP, а затем вставить их в MySQL. Я пробовал str_replace, preg_replace и rawurlencode, но это не сработало.

var_dump($mystring);             # output is `string(6) "‐200"`
var_dump(urlencode($mystring));  # output is `string(12) "%E2%80%90200"`
var_dump((int)$mystring);        # output is 'int(0)

$mystring = str_replace('-', '%E2%80%90', $mystring); # did not work
$mystring = preg_replace('/%E2%80%90/', '-', $mystring); # did not work
$mystring = rawurlencode($mystring); # did not work

0

Решение

Ваш PDF-текст содержит многобайтовые символы, которые вам придется конвертировать (возможно, и в других местах).

<?php

$mystring = "‐200";

$unicode_hyphen = '‐'; // "E2 80 90" is the Unicode multi-byte hyphen character, that your PDFs seem to contain
$ascii_hyphen = '-';
$myint = intval(str_replace($unicode_hyphen , $ascii_hyhpen , $mystring));

var_dump($myint); // => int(-200)

Увидеть: 3v4l.org/sN5AS

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]