2014-05-09 94 views
2

問題是這樣的:echo $village_id. "-" .$wg_village; 它返回:開捕致命錯誤:類stdClass的的對象無法轉換爲字符串

Catchable fatal error: Object of class stdClass could not be converted to string in /files/function_20.php on line 70

和在線70我貼的是那裏的代碼,功能完美的作品,只是返回空白頁面並顯示錯誤。

那條線有什麼問題?我該如何糾正?

編輯:一個var_dump$village_id$wg_village

string(5) "80784" 
object(stdClass)#25 (35) { 
    ["id"]=> string(5) "80784" 
    ["name"]=> string(7) "NewName" 
    ["x"]=> string(3) "-99" 
    ["y"]=> string(3) "-14" 
    ["kind_id"]=> string(1) "5" 
    ["user_id"]=> string(1) "1" 
    ["rs1"]=> int(36000) ["rs2"]=> int(36000) 
    ["rs3"]=> int(36000) ["rs4"]=> int(36000) 
    ["workers"]=> string(2) "51" 
    ["troop_keep"]=> string(1) "0" 
    ["time_update_rs1"]=> string(19) "2014-05-09 01:45:30" 
    ["time_update_rs2"]=> string(19) "2014-05-09 01:45:30" 
    ["time_update_rs3"]=> string(19) "2014-05-09 01:45:30" 
    ["time_update_rs4"]=> string(19) "2014-05-09 01:45:30" 
    ["nation_id"]=> string(1) "2" ["merchant_underaway"]=> string(1) "0" 
    ["child_id"]=> string(0) "" ["cp"]=> string(3) "104" 
    ["cpupdate_time"]=> string(19) "2014-05-08 21:49:55" 
    ["krs1"]=> string(1) "1" 
    ["krs2"]=> string(1) "1" 
    ["krs3"]=> string(1) "1" 
    ["krs4"]=> string(1) "1" 
    ["faith"]=> string(1) "3" 
    ["faith_time"]=> string(19) "2014-05-07 22:05:44" 
    ["dateCreate_vila"]=> string(19) "2014-05-05 20:38:26" 
    ["capa123"]=> int(36000) 
    ["capa4"]=> int(36000) 
    ["speedIncreaseRS1"]=> float(1000) 
    ["speedIncreaseRS2"]=> float(600) 
    ["speedIncreaseRS3"]=> float(800) 
    ["speedIncreaseRS4"]=> float(1200) 
    ["speedIncreaseRS4Real"]=> float(1149) 
} 
+0

是'$ village_id'或'$ wg_village'是一個對象,而不是一個數字或字符串,所以你不能只是呼應它。你需要回應它的一些屬性。 – Barmar

+0

「...函數完美工作,只是返回一個帶有錯誤的空白頁面。」所以完美是一個帶有錯誤的空白頁面?那麼問題是什麼? – JakeGould

回答

2

如果你引用的是object你不能把它作爲一個string。嘗試傾倒出來,看看你能不能引用屬性裏面

var_dump($village_id); 
var_dump($wg_village); 

所以,現在我們有一個場,讓我們嘗試訪問這些屬性

echo $village_id. "-" .$wg_village->name; 

應該失敗的唯一原因是,如果屬性爲protectedprivate,但這看起來像數據庫結果集。

您必須使用->運算符來引用屬性。你不能直接打電話給他們。 This thread更詳細地描述了這一點。

+0

我的猜測是對象是'$ wg_village'。 – Barmar

+0

它返回字符串(5)「80784」 – user3063668

+0

嘗試下一個 – Machavity

0

首先,您正在嘗試echo對象的內容。因此,首先執行以下操作以查看$village_id以及$wg_village中的內容。你只用var_dump,但我更喜歡使用print_r<pre>標籤可讀性:

echo '<pre>'; 
print_r($village_id); 
echo '</pre>'; 

echo '<pre>'; 
print_r($wg_village); 
echo '</pre>'; 

所以,你可以嘗試,也讓事情更加清楚。但從我正在閱讀的內容來看,似乎$village_id是一個值爲80784的字符串,而$wg_village是一個對象。現在的事情是,你想從$wg_village對象中得到什麼?

您需要訪問像這樣的數據:

echo $wg_village->id; 
echo $wg_village->name; 
echo $wg_village->x; 
echo $wg_village->y; 
etc… 
相關問題