如何在pdftotext之后解码PHP中的减号
How to decode minus sign in PHP after pdftotext
我正在尝试将带有负数的字符串转换为整数。
我使用 pdftotext
将 pdf 文件转换为文本文件。执行正则表达式后,我有一些字符串需要在 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
您的 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)
我正在尝试将带有负数的字符串转换为整数。
我使用 pdftotext
将 pdf 文件转换为文本文件。执行正则表达式后,我有一些字符串需要在 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
您的 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)