Php 从多维数组写入数据库记录
我有一个数组,看起来像这样Php 从多维数组写入数据库记录,php,mysql,Php,Mysql,我有一个数组,看起来像这样 Array ( [0] => stdClass Object ( [ipID] => 1 [countryID] => 13 [beginIP] => 1.0.0.0 [endIP] => 1.0.0.255 [netMask] => 24 [beginIPNum] => 16777216 [endIPNum
Array
(
[0] => stdClass Object
(
[ipID] => 1
[countryID] => 13
[beginIP] => 1.0.0.0
[endIP] => 1.0.0.255
[netMask] => 24
[beginIPNum] => 16777216
[endIPNum] => 16777471
)
[1] => stdClass Object
(
[ipID] => 2
[countryID] => 44
[beginIP] => 1.0.1.0
[endIP] => 1.0.1.255
[netMask] => 24
[beginIPNum] => 16777472
[endIPNum] => 16777727
)
[2] => stdClass Object
(
[ipID] => 3
[countryID] => 44
[beginIP] => 1.0.2.0
[endIP] => 1.0.3.255
[netMask] => 23
[beginIPNum] => 16777728
[endIPNum] => 16778239
)
)
现在我想获取每一组数据(ipID、countryID等)并将它们写入数据库,但我被卡住了
如何获取每组数据
foreach($data as $ipRecord ) {
$a = array();
$a['ipID'] = $ipRecord['ipID'];
$a['countryID'] = $ipRecord['countryID'];
echo $a;
}
使用上述命令会引发一个致命错误:无法使用stdClass类型的对象作为数组假设您在这里使用PHP,您可以使用一个
forEach
:
forEach($arr as $item) {
// Run your database insertion here
}
见:
基本上,只需单独访问数组中的项,并对它们运行适当的数据库操作即可
但是,老实说,这取决于您使用的语言和数据库。假设您在这里使用PHP,您可以使用
forEach
:
forEach($arr as $item) {
// Run your database insertion here
}
见:
基本上,只需单独访问数组中的项,并对它们运行适当的数据库操作即可
但是,老实说,这将取决于您使用的语言和数据库。您应该设置障碍,因为它是stdClass
foreach($Array as $key => $value)
{
$ipID = $value->ipID;
$etc = $value->etc;
$countryID = $value->countryID;
// bla bla
}
因为它是stdClass,所以你应该挡道
foreach($Array as $key => $value)
{
$ipID = $value->ipID;
$etc = $value->etc;
$countryID = $value->countryID;
// bla bla
}
您可能不理解数组和对象之间的区别 访问阵列的方式
$foo["key"]
访问类(即stdclass)属性的方式
您可能不理解数组和对象之间的区别 访问阵列的方式
$foo["key"]
访问类(即stdclass)属性的方式
是的,我正在使用php,当我尝试上面的致命错误时,我得到了这个错误:不能将stdClass类型的对象用作array@Rich是的,您不能将对象用作数组。您需要传入实际的数组,然后在
$item
中与对象交互(或您称之为它的任何内容)。或者,您可以使用for循环
来访问数据。请记住,这是一个多维数组,上面的数组将返回3个单独的值arrays@LiamSorsby这是一个包含3个对象的数组,您将访问这些对象,而不是另一个数组,我在尝试上述致命错误时遇到此错误:无法将stdClass类型的对象用作array@Rich是的,您不能将对象用作数组。您需要传入实际的数组,然后在$item
中与对象交互(或您称之为它的任何内容)。或者,您可以使用for循环
来访问数据。请记住,这是一个多维数组,上面的数组将返回3个单独的值arrays@LiamSorsby这是一个包含3个对象的数组,您将访问这些对象,而不是另一个数组。您的错误是由于您试图以数组的形式访问对象。您需要改用$ipRecord->ipID
格式。您的错误是由于尝试以数组形式访问对象而导致的。您需要改用$ipRecord->ipID
格式。