PHP多维数组问题
我正在尝试构建一个多维数组PHP多维数组问题,php,arrays,multidimensional-array,for-loop,Php,Arrays,Multidimensional Array,For Loop,我正在尝试构建一个多维数组 public function saveRateTemplateData($RateTemplateInfo) { $RateTemplateID = $RateTemplateInfo['id']; $Zones = $RateTemplateInfo['premium_zones']; //$ZoneZipCodeIDs[] = array(); for ($n = 1; $n <= $RateTemplateInfo['pr
public function saveRateTemplateData($RateTemplateInfo)
{
$RateTemplateID = $RateTemplateInfo['id'];
$Zones = $RateTemplateInfo['premium_zones'];
//$ZoneZipCodeIDs[] = array();
for ($n = 1; $n <= $RateTemplateInfo['premium_zones']; $n++) {
$ZoneNum = 'zone' . $n;
$ZipCodeArray = explode(",",$_POST[$ZoneNum]);
$ZipCodeIDs=array();
foreach ($ZipCodeArray as $v) {
$v = intval(trim($v));
if (strlen($v) == 5) {
array_push($ZipCodeIDs, $this->addZipCode($v));
} else {
echo "it isnt 5";
}
}
}
}
我试过很多方法都不管用
基本上我希望它的格式是VarName[zoneumbers][ZipCodeID]
所以我以后可以循环使用它。因此,我可以这样打印$VarName[$n],然后将为区域编号1打印所有zipcodeID的数组,在这种情况下,它将打印34,31,23公共函数saveRateTemplateData($RateTemplateInfo)
public function saveRateTemplateData($RateTemplateInfo)
{
$RateTemplateID = $RateTemplateInfo['id'];
$zones = array(); // you weren't using this so I'll use it to hold the data
for ($n = 1; $n <= $RateTemplateInfo['premium_zones']; $n++) {
$ZoneNum = 'zone' . $n;
// create an array under the zone number for holding the IDs
$zones[$n] = array();
$ZipCodeArray = explode(",",$_POST[$ZoneNum]);
foreach ($ZipCodeArray as $v) {
$v = (int) trim($v);
if (strlen($v) == 5) {
$zones[$n][] = $this->addZipCode($v);
} else {
// use exceptions for exceptional circumstances
throw new RuntimeException(sprintf('Invalid zone ID "%s"', $v));
}
}
}
return $zones;
}
{
$RateTemplateID=$RateTemplateInfo['id'];
$zones=array();//您没有使用它,所以我将使用它来保存数据
对于($n=1;$n addZipCode($v);
}否则{
//在特殊情况下使用例外
抛出新的运行时异常(sprintf('Invalid zone ID“%s”,$v');
}
}
}
返回$区域;
}
公共函数saveRateTemplateData($RateTemplateInfo)
{
$RateTemplateID=$RateTemplateInfo['id'];
$zones=array();//您没有使用它,所以我将使用它来保存数据
对于($n=1;$n addZipCode($v);
}否则{
//在特殊情况下使用例外
抛出新的运行时异常(sprintf('Invalid zone ID“%s”,$v');
}
}
}
返回$区域;
}
addZipCode()方法中有什么?@Phil这是我试图规范化数据的尝试。它所做的一切都是检查邮政编码是否在另一个表中。如果是,则返回邮政编码ID。如果不是,则将其添加到另一个表中,然后返回ID。addZipCode()中有什么内容
method?@Phil这是我对数据进行规范化的尝试。它所做的一切都是检查邮政编码是否在另一个表中。如果是,则返回邮政编码ID。如果不是,则将其添加到另一个表中,然后返回ID。
public function saveRateTemplateData($RateTemplateInfo)
{
$RateTemplateID = $RateTemplateInfo['id'];
$zones = array(); // you weren't using this so I'll use it to hold the data
for ($n = 1; $n <= $RateTemplateInfo['premium_zones']; $n++) {
$ZoneNum = 'zone' . $n;
// create an array under the zone number for holding the IDs
$zones[$n] = array();
$ZipCodeArray = explode(",",$_POST[$ZoneNum]);
foreach ($ZipCodeArray as $v) {
$v = (int) trim($v);
if (strlen($v) == 5) {
$zones[$n][] = $this->addZipCode($v);
} else {
// use exceptions for exceptional circumstances
throw new RuntimeException(sprintf('Invalid zone ID "%s"', $v));
}
}
}
return $zones;
}