phpstdclass
『壹』 php的stdClass類詳解及幾種數組對象轉換方法
一、stdClass數組轉對象
$arr=array();
$arr['a']=1;
$arr['b']=2;
$arr['c']=3;
$object=newstdClass;
foreach($arras$key=>$value){
$object->$key=$value;
}
var_mp($object);
結果輸出如下:
object(stdClass)#1(3){
["a"]=>
int(1)
["b"]=>
int(2)
["c"]=>
int(3)
}
二、對象轉數組
functionobject_to_array($obj)
{
$_arr=is_object($obj)?get_object_vars($obj):$obj;
foreach($_arras$key=>$val)
{
$val=(is_array($val)||is_object($val))?object_to_array($val):$val;
$arr[$key]=$val;
}
return$arr;
}
三、ArrayObject方法數組轉對象
$arr=array('key1'=>'test1','key2'=>'test2');
var_mp(newArrayObject($arr));
結果輸出如下:
object(ArrayObject)#1(1){
["storage":"ArrayObject":private]=>
array(2){
["key1"]=>
string(5)"test1"
["key2"]=>
string(5)"test2"
}
}
『貳』 php stdclass 怎麼轉換為數組並遍歷出來
使用mysql_fetch_assoc函數,具體用法可以查看一下手冊,還有幾個相關的函數,我一般是用這個。
$list = array();//聲明一個數組用來存放數據
//$row 為取出來的一行的數據,把他放到$list裡面
//$rs就是你從資料庫查詢出來的資源
while($row = mysql_fetch_assoc($rs)) {
$list[] = $row;
}
『叄』 php中 stdclass object是什麼
stdClass在PHP5才開始被流行。而PHP stdClass也是zend的一個保留類。似乎沒有其他作用。也幾乎沒有任何說明。
或者,我們可以這么理解:PHP stdClass是PHP的一個基類,所有的類幾乎都繼承這個類,所以任何時候都可以被new,可以讓這個變數成為一個object。同時,這個基類又有一個特殊的地方,就是沒有方法。
凡時用new stdClass()的變數,都不可能會出現$a->test()這種方式的使用。
說簡單的一些,stdClass()就是一個程序員實現提前聲明的類,也就是說我們可以隨時讓一個變數成為一個類對象的實例而不需要先聲明類才能創建類對象的實例。
『肆』 PHP中遍歷stdclass object的如何實現代碼
用get_object_vars()函數轉換成數組。也可以聲明一下這個變數類型 $test = (array)$test;,效果是一樣的。前者需要解析處理。後者就沒有那麼麻煩處理了。
『伍』 【PHP】如何列印鑲嵌的stdclass object 數組
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==xinjian)
{
text.setText("");
}
if(e.getSource()==dakai)
{
openFD.show();
String s;
『陸』 php stdclass 如何列印
我舉個例子,希望有幫助:
<?php
$std=newstdClass();
$std->id=12345;
$arr=array(
'list'=>array($std)
);
print_r($arr);
//列印id
echo$arr['list'][0]->id;
exit;
『柒』 php的smarty出錯,Call to undefined method stdClass::createTemplate()
stdclass在php中是預定義的幾個類之一,是zent保留的一個類。實際上它是PHP提供的一個基類,就是一個空白的 類,裡面什麼都沒有,我們可以實例化它,然後定義一系列的變數,通過它來進行變數的傳遞(很多php程序員用它來傳遞一系列變數的值,而同時又懶得去創建 一個自己的類)。但是,由於實例化後不能添加方法,只能傳遞屬性。因為,一旦類被實列化以後,就不能在添加方法了。--from
『捌』 php stdClass Object 解析
//調用這個函數,將其幻化為數組,然後取出對應值
functionobject_array($array)
{
if(is_object($array))
{
$array=(array)$array;
}
if(is_array($array))
{
foreach($arrayas$key=>$value)
{
$array[$key]=object_array($value);
}
}
return$array;
}
『玖』 PHP中stdClass Object怎麼獲取指定數據
這是json_decode出來的對象
$result = json_decode($jsonstr);
echo $result->Code;
echo $result->Message;
json_decode支持轉為數組或對象, 轉為數組的時候第二個參數傳true
$result = json_decode($jsonstr,true);
echo $result['Code'];
echo $result['Message'];
『拾』 php出來了個undefined property:stdclass 的錯誤,怎麼辦呢
這種情況一般是你對一個類對象,使用了屬性調用造成的。
比如應該是
echo$a->att1;
你寫錯成了:
echo$a['att1'];
改回來就可以了。
PHP中使用關鍵字 class 來定義一個類。類的命名一般使用首字元大寫,而後每個單詞首字元大寫連接的方式方便閱讀。
在PHP5中,屬性指在class 中聲明的變數。在聲明變數時,必須使用 public private protected 之一進行修飾,定義變數的訪問許可權。PHP中的屬性:用來描述對象的數據元素稱為對象的屬性(也稱為數據/狀態)
Public(公開): 可以自由的在類的內部外部讀取、修改。
Private(私有): 只能在這個當前類的內部讀取、修改。
Protected(受保護):能夠在這個類和類的子類中讀取和修改。屬性的使用:通過引用變數的 -> 符號調用變數指向對象的屬性。
在方法內部通過 $this-> 符號調用同一對象的屬性。
所以應該用箭頭調用而不是括弧。