我需要一些外部的帮助,以便弄清楚,如果我要去了解如何做到这一点...如何设置PHP类以从多维数组中读取?
我有一个多维数组,我试图建立一个这样的类我可以将它用作对象,以便我可以动态调用它的一部分。
这里是我的数组的一个小片段,所以你可以看到我正在使用的结构。
<?php $modelMap=array(
'RM3H3FEW' => array('year' => 2015,
'model' => 'CR-V',
'trim_level'=>array('LX','lx2wd'),
'transmission' => '2WD Continuously Variable ',
'colors' => array(
'BK' => 'Crystal Black Pearl',
'BL' => 'Obsidian Blue Pearl',
'CS' => 'Copper Sunset Pearl',
'KC' => 'Kona Coffee Metallic',
'MA' => 'Mountain Air Metallic',
'MS' => 'Modern Steel Metallic',
'RE' => 'Basque Red Pearl II',
'SI' => 'Alabaster Silver Metallic',
'UT' => 'Urban Titanium Metallic',
'WH' => 'White Diamond Pearl',
)
),
'RM4H3FEW' => array('year' => 2015,
'model' => 'CR-V',
'trim_level'=>array('LX','lxawd'),
'transmission' => 'AWD Continuously Variable ',
'colors' => array(
'BK' => 'Crystal Black Pearl',
'BL' => 'Obsidian Blue Pearl',
'CS' => 'Copper Sunset Pearl',
'KC' => 'Kona Coffee Metallic',
'MA' => 'Mountain Air Metallic',
'MS' => 'Modern Steel Metallic',
'RE' => 'Basque Red Pearl II',
'SI' => 'Alabaster Silver Metallic',
'UT' => 'Urban Titanium Metallic',
'WH' => 'White Diamond Pearl',
)
);
?>
这里是我试图建立的类,以使其成为一个对象。不用说,我还没有得到很远......
<?php
class OptionsBuild
{
public $year = 0;
public $model = '';
public $transmission = '';
public $trimlevel = '';
public $colorID = '';
public $colorName = '';
public function __construct($modelMap)
{
$this->transmission = $transmission;
$this->trimlevel = $trimlevel;
$this->colorID = $colorID;
$this->colorName = $colorName;
}
}
//Test area
$obj = new OptionsBuild;
$obj = __construct($modelMap);
?>
而且我不断收到一个错误,每当我试图创建一个做任何事情,告诉我,我的功能一个功能不存在,并且表现得像它不在那里。为什么是这样?总而言之,我只是想设置一个类,允许我输入多维数组,然后进行设置,这样我就可以添加函数/方法来获得年,模型,修剪级别,传输和颜色。这甚至有可能吗?请善待,如果这是一个简单的解决方案,我是PHP的新手,对编程新手,并试图创建我的第一个对象/类。
感谢您的回应!是的,我有超过1000个模型代码(例如RM4H3FEW),它们是多维数组格式。 就像你说的,我们的目标是让每个型号(又名每辆车)作为一个独立的对象......我想。 我的想法是运行一个foreach循环,将每个modelcode(例如RM4H3FEW)作为一个独立的对象,并从那里我想能够调用每个modelcode的个人统计(例如年,模型)。 我将尝试使用您发布的foreach示例。 – Josh979