不能从同类中调用函数,否则可以吗?

时间:2010-09-06 15:40:01

标签: php class iptc

  • 似乎无法从其类中调用的函数中获取结果...

    require_once($ _ SERVER [ 'DOCUMENT_ROOT'] “/ youradmin_v2 /脚本/ PHP / IPTC.php”。);

    class Media {

    function Media() {
        // connects to db
    }
    
    function getMetaData($mediaID){
        global $select;
    
        $mediaDB = $select->mediaSelect($mediaID);
        $filePath=$mediaDB['filePath'];
    
        $itpc =new Image_IPTC($filePath);
        return $itpc->getTag($tag,0)." called?";
    }
    

    function newFileProcessing($ file_name){      全球$ func;
        global $ select,$ insert,$ update;

    $mediaID=$insert->addMedia($file_name, $filetype, $filePathImg,$testI);
    
    $mediaDB = $select->mediaSelect($mediaID);
    $filePath=$_SERVER['DOCUMENT_ROOT'].$mediaDB['pathToFile'];
    
    $update->updateQuery('media',"title='".$this->getMetaData($mediaID)."'");   
    

    }

    }  $ media = new Media;

当我在php页面上使用$ media-> getMetaData($ mediaID)时,它有效吗?没有错误,当它在类中被调用时“被叫”?被添加到条目中,所以我认为它与$ itpc = new Image_IPTC($ filePath)部分有关,可以在这里查看;

iptc class

谁能看到我做错了什么?!任何指点赞赏。

最好,丹。

1 个答案:

答案 0 :(得分:0)

$this->getMetaData($mediaID)

不能在函数newFileProcessing($ file_name)中工作,因为它不是Media类的成员函数

如果您的代码看起来像这样,那么

require_once($_SERVER['DOCUMENT_ROOT']."/youradmin_v2/scripts/php/IPTC.php"); 

class Media{

    function Media() {
        // connects to db
    }

    function getMetaData($mediaID){
        global $select;

        $mediaDB = $select->mediaSelect($mediaID);
        $filePath=$mediaDB['filePath'];

        $itpc =new Image_IPTC($filePath);
        return $itpc->getTag($tag,0)." called?";
    }


    function newFileProcessing($file_name){
      global $func;   
      global $select, $insert, $update;   

      $mediaID=$insert->addMedia($file_name, $filetype, $filePathImg,$testI);

      $mediaDB = $select->mediaSelect($mediaID);
      $filePath=$_SERVER['DOCUMENT_ROOT'].$mediaDB['pathToFile'];

      $update->updateQuery('media',"title='".$this->getMetaData($mediaID)."'");   
   }
}

$media = new Media;