2013-03-28 55 views
3

我将为一个新项目使用gdal/ogr。我想要一个精简但功能齐全的应用程序,因此不会使用其他实现,比如mapserver,因为它们具有无关的组件,即使在将来,我也怀疑应用程序中会需要这些组件。根据记录,这是一个GIS,但我问这里对GIS的,是因为那里这么几个例子,在使用GDAL/OGRPHP GDAL/OGR库的用法,哪种方法更清洁?

PHP我基本上心目中有三个选项:

你认为哪是实现图书馆的最有效方法是什么?

+0

我会建议你使用PHP5,@中。为什么在那里再次工作? – hek2mgl 2013-03-28 10:02:54

+0

是的,我认为这可能是最好的选择,但它不建议在生产环境和其认为不稳定..... – 2013-03-28 10:05:03

+0

自定义解决方案将需要相同的alpha版,beta版,不稳定,稳定的分期。我希望你开始在阿尔法状态(像所有人)) – hek2mgl 2013-03-28 10:10:39

回答

5

我使用exec函数结束了,主要是因为没有时间进入swig或php扩展开发,这对我来说是个人首选的方法。 //这里是它的一个小样本片断的用法,希望它会派上用场别人

public function convertToNewFormat($format) 
     { 
       return(
        exec('ogr2ogr -f ' 
         .$format 
         .' '.self::setNewFileLocation() 
         .' '.self::setOldFileLocation())); 

     } 
1

可以使用Symfony的工艺成分,避免了普通EXEC命令。
它有一个很好的语法,很容易使用。

http://symfony.com/doc/current/components/process.html

$process = new Process('ls -lsa'); 
$process->run(); 

// executes after the command finishes 
if (!$process->isSuccessful()) { 
    throw new ProcessFailedException($process); 
} 

echo $process->getOutput();