PHP - 执行文件路径错误(Tesseract)

时间:2016-12-15 10:34:08

标签: php exec tesseract

我在命令行中运行了tesseract并且结果恢复正常但是现在我使用与PHP exec相同的命令它将无法正常工作。

命令是:

"C:\Program Files (x86)\Tesseract-OCR\tesseract.exe" "C:\xampp\htdocs\Atoms Projects\Tesseract\text.jpeg" "C:\xampp\htdocs\Atoms Projects\Tesseract\Out.txt"

我试过这段代码:

exec("C:\Program Files (x86)\Tesseract-OCR\tesseract.exe" "C:\xampp\htdocs\Atoms Projects\Tesseract\text.jpeg" "C:\xampp\htdocs\Atoms Projects\Tesseract\Out.txt");
print_r($msg);

如何使命令正常工作?

还有什么方法可以发送多行?分成像以下的变量:

$exe = "C:\Program Files (x86)\Tesseract-OCR\tesseract.exe";
$img = "C:\xampp\htdocs\User Projects\Tesseract\text.jpeg";
$txt = "C:\xampp\htdocs\User Projects\Tesseract\Out.txt";

这也行不通:

$exe = "C:\Program Files (x86)\Tesseract-OCR\tesseract.exe";
$img = "C:\xampp\htdocs\Atoms Projects\Tesseract\text.jpeg";
$txt = "C:\xampp\htdocs\Atoms Projects\Tesseract\Out";
$output = exec("\"$exe\" \"$img\" \"$txt\" "); 
print_r($output);

我在Windows操作系统上使用XAMPP。

1 个答案:

答案 0 :(得分:0)

我刚刚找到了将所有\字符更改为3个路径中的/的解决方案,如下所示:

$exe = "C:/Program Files (x86)/Tesseract-OCR/tesseract.exe";
$img = "C:/xampp/htdocs/Atoms Projects/Tesseract/text.jpeg";
$txt = "C:/xampp/htdocs/Atoms Projects/Tesseract/Out";
$output = exec("\"$exe\" \"$img\" \"$txt\" "); 
print_r($output);