2

尝试运行此脚本:

<?php

   $src  = "./tmp/image1.jpg";
   $dest = "./tmp/image1";
   $out  = "";

   // ob_start();
   $out  = system("tesseract $src $dest");
   // ob_end_clean();

   die($out);
?>

它显示一个空白脚本并显示错误日志:sh: tesseract: command not found

虽然这个命令在 shh 上工作得很好......

知道为什么吗?

4

2 回答 2

8

您需要在磁盘上提供 tesseract 命令的完整路径(通常/usr/bin/tesseract,但这可能会因您的特定平台/发行版而异),因为 PHP 执行命令的上下文不会设置相关的默认路径向上。

要找出命令所在的位置,只需which tesseract通过 shell 使用。(只要它在不使用完整路径的情况下实际可用。)

于 2013-01-09T22:09:35.593 回答
4

当以 WWW/PHP 用户身份运行时,“tesseract”路径可能不在 PATH 环境中。尝试使用它的完整路径。

于 2013-01-09T22:08:59.397 回答