📜  在PHP中将对象转换为关联数组

📅  最后修改于: 2022-05-13 01:54:11.324000             🧑  作者: Mango

在PHP中将对象转换为关联数组

对象是类的实例。它只是一个类的样本,并分配了内存。数组是一种数据结构,它在一个名称中存储一个或多个相似类型的值,但关联数组不同于简单的PHP数组。包含字符串索引的数组称为关联数组。它将元素值与键值关联存储,而不是按线性索引顺序存储。
方法 1:使用 json_decode 和 json_encode 方法: json_decode函数接受 JSON 编码的字符串并将其转换为PHP变量,另一方面 json_encode 返回给定值的 JSON 编码的字符串。
句法:

$myArray = json_decode(json_encode($object), true);

例子:

php
var1 = $par1;
        $this->var2 = $par2;
    }
}
  
// Creating the object
$myObj = new sample(1000, "second");
echo "Before conversion: \n";
var_dump($myObj);
  
// Converting object to associative array
$myArray = json_decode(json_encode($myObj), true);
echo "After conversion: \n";
var_dump($myArray);
?>


php
item1 = $par1;
        $this->item2 = $par2;
        $this->item3 = $par3;
    }
}
  
// Create myBag object
$myBag = new bag("Mobile", "Charger", "Cable");
echo "Before conversion : \n";
var_dump($myBag);
  
// Converting object to an array
$myBagArray = (array)$myBag;
echo "After conversion : \n";
var_dump($myBagArray);
?>


输出:
Before conversion: 
object(sample)#1 (2) {
  ["var1"]=>
  int(1000)
  ["var2"]=>
  string(6) "second"
}
After conversion: 
array(2) {
  ["var1"]=>
  int(1000)
  ["var2"]=>
  string(6) "second"
}

方法 2:将对象类型转换为数组:类型转换是将一种数据类型变量转化为不同数据类型的方法,它只是一种数据类型的显式转换。它可以通过使用PHP支持类型转换规则PHP对象转换为一个数组。
句法:

$myArray = (array) $myObj;

例子:

PHP

item1 = $par1;
        $this->item2 = $par2;
        $this->item3 = $par3;
    }
}
  
// Create myBag object
$myBag = new bag("Mobile", "Charger", "Cable");
echo "Before conversion : \n";
var_dump($myBag);
  
// Converting object to an array
$myBagArray = (array)$myBag;
echo "After conversion : \n";
var_dump($myBagArray);
?>
输出:
Before conversion : 
object(bag)#1 (3) {
  ["item1"]=>
  string(6) "Mobile"
  ["item2"]=>
  string(7) "Charger"
  ["item3"]=>
  string(5) "Cable"
}
After conversion : 
array(3) {
  ["item1"]=>
  string(6) "Mobile"
  ["item2"]=>
  string(7) "Charger"
  ["item3"]=>
  string(5) "Cable"
}

PHP是一种专门为 Web 开发设计的服务器端脚本语言。您可以按照此PHP教程和PHP示例从头开始学习PHP 。