2014-04-09 76 views
-2

這是一個非常愚蠢的問題,但我沒有PHP的朋友,我可以倒回,我傷心;-)Firephp,類文件和「未定義變量」

所以我有這樣的設置,我剛纔安裝firephp :

/lib/firephp.php // firephp standard library 
/lib/data.php  // a php class file of my own 
     | 
     |-> Class Data {} // this is the class 
        function something() { $firephp->log('whatever'); } 
pre.php   // here i initialize firephp 
show_data.php  // i show data from the database here 


--- 
pre.php 
--- 
require_once($_SERVER['DOCUMENT_ROOT'] . '/intranet/lib/firephp.php'); 
ob_start(); 
$firephp = FirePHP::getInstance(true); 

--- 
show_data.php 
--- 
include('pre.php') 
include('lib/data.php') 
$c = new Data 
$c->something() 

,我得到這樣的:注意:未定義的變量:firephp在show_data.php

TL; DR我在一個包含文件初始化firephp,然後包括我的類文件,當我嘗試從類內部調用它不能讀取$ firephp var。 ..

任何提示,責罵或任何你可以幫助我表示讚賞。

回答

0

我找到了一個好辦法做到這一點:

在pre.php我創建創建$ firephp對象的函數,然後我就打電話,在show_data.php

--- 
pre.php 
--- 
require_once($_SERVER['DOCUMENT_ROOT'] . '/intranet/lib/firephp.php'); 
ob_start(); 

function mylog($var, $other = '') { 
    $firephp = FirePHP::getInstance(true); 
    $firephp->log($var, $other); 
} 


--- 
show_data.php 
--- 
include('pre.php') 
include('lib/data.php') 
mylog('whatever'); 

這工作!