2015-05-14 155 views
-1

我想在我的項目上使用一個php類插件。 (Windows)中PHP包括類不工作

https://github.com/mhor/php-mediainfo

這是一個非常基本的問題,但我不知道如何使這項工作。

我的代碼:

<?php 
    include '/mediainfo/MediaInfo.php'; 
    $mediaInfo = new MediaInfo(); 

而且我得到這個錯誤:

Fatal error: Class 'MediaInfo' not found in index.php on line 15 

/mediainfo/MediaInfo.php:

<?php 

namespace Mhor\MediaInfo; 

use Mhor\MediaInfo\Builder\MediaInfoCommandBuilder; 
use Mhor\MediaInfo\Container\MediaInfoContainer; 
use Mhor\MediaInfo\Parser\MediaInfoOutputParser; 

class MediaInfo 
{ 
    /** 
    * @param $filePath 
    * @return MediaInfoContainer 
    */ 
    public function getInfo($filePath) 
    { 
     $mediaInfoCommandBuilder = new MediaInfoCommandBuilder(); 
     $output = $mediaInfoCommandBuilder->buildMediaInfoCommandRunner($filePath)->run(); 

     $mediaInfoOutputParser = new MediaInfoOutputParser(); 
     $mediaInfoOutputParser->parse($output); 

     return $mediaInfoOutputParser->getMediaInfoContainer(); 
    } 
} 

我不知道「Mhor酒店\媒體信息\'。我剛剛從Github上下載的來源,並提取到根WWW /的MediaInfo:

  • /
  • 的index.php
  • /的MediaInfo/...(所有文件和文件夾)

我嘗試了一些其他類,並得到相同的錯誤。

$mediaInfo = new \Mhor\MediaInfo\MediaInfo(); 

錯誤是固定的,但下一行:


試圖Tanmay庫馬爾的建議,之後

$mediaInfoContainer = $mediaInfo->getInfo('video.mp4'); 

給出:

Fatal error: Class 'Mhor\MediaInfo\Builder\MediaInfoCommandBuilder' not found 
+0

嘗試包括 '的MediaInfo/MediaInfo.php'; –

+0

剛剛嘗試過。同樣的錯誤。 – Azevedo

+0

你需要添加命名空間...哎呀命中輸入太快'使用Mhor \ MediaInfo;' – Squeegy

回答

0

下面是完整的正確的方法:

include '/mediainfo/MediaInfo.php'; 
use \Mhor\MediaInfo\MediaInfo;//now you can directly call class on it's name 

$mediaInfo = new MediaInfo(); 

讓我知道,如果你面對了問題:)

+0

'致命錯誤:類'Mhor \ MediaInfo'找不到' – Azevedo

+0

更改爲'use \ Mhor \ MediaInfo;' –

+0

仍然...我嘗試了很多方法...... – Azevedo

1

替代$的MediaInfo與: -

$mediaInfo = new \Mhor\MediaInfo\MediaInfo(); 
+0

它部分解決。現在我得到了'致命錯誤:Class'Mhor \ MediaInfo \ Builder \ MediaInfoCommandBuilder'not found'when':$ mediaInfoContainer = $ mediaInfo-> getInfo('file.mp4');' – Azevedo

+0

still:'致命錯誤:Class' Mhor \ MediaInfo \ Builder \ MediaInfoCommandBuilder'找不到' – Azevedo

+0

它看起來像一個遞歸錯誤... – Azevedo