2013-04-13 55 views
-1

一個php變量$ a(它被設置爲代碼中較早的一個值)被重置爲0值,我不希望它。在php代碼的末尾,我做了一個回聲,$ a是0.所以我做了一個調試數組來捕獲不同點的值。我發現它是越來越設置爲0下面的代碼:php變量重置爲0

$a = 1; 
if($total> 0){ 
    $a = ($a/$total); 
    $X["i"]=$a;  
} 
$X["ii"]=$a; 

Output: 
$x["i"]=1; 
$x["ii"]=0; 

有幾件事情: 有沒有功能在所有的(顯然不是在那裏它被設置爲0),$ a是一個全球性的。 這是一個非常大的PHP文件。我想知道內存是否是問題...?不知道。 我不是一個多功能的PHP,或編程。

+2

可能不能做這樣的事情,除非'$ a'是在你沒有顯示的代碼中其他地方建立的引用,這意味着它可以根據代碼中其他位置的操作不可預知地改變值。 –

+0

也許在代碼的其他地方,你正在使用你認爲是一個名爲'$ a'的另一個變量(假設它是真實的名稱,這對於變量來說是一個非常糟糕的名稱)並且意外覆蓋它? – IMSoP

回答

0

要設置資本X和輸出小寫X

(如果這只是一個錯字,請出示更多的代碼。例如,輸出代碼。)

+0

這只是一個錯字:X與X.還有一件事:在代碼之前我可以很清楚地發現一個零分的錯誤(fyi:我沒有顯示所有我的代碼,因爲它真的很大)。所以在代碼中仍然沒有發生任何事情,但是可能會有一個先前的數學錯誤被指責? – user2278448

+0

@ user2278448僅當您在設置$ x ['i']和$ x = ['ii']之間進行操作時纔可以。你顯示的內容沒有明顯的錯誤。所以你需要多給我們一點時間來幫助你。你可以嘗試把代碼放在pastebin上,如果它在這裏太大了。 –