嘿,我有一个简单的循环,我试图创建ArrayObject,以便它拥有一个坐标系统。
我正在尝试通过将Y坐标放在X坐标中来减少重复数据所需的数据量。
这是我试过的:
$object = new ArrayObject();
$xWidth=1;
$yWidth=2;
for ($x=0; $x < $xWidth; $x++) {
$object[$x] = new ArrayObject();
for ($y=0; $y < $yWidth; $y++) {
$object[$x][$y];
}
}
问题是数据出来的不是我预期的......这就是我看到数据的方式:
ArrayObject Object
(
[storage:ArrayObject:private] => Array
(
[0] => ArrayObject Object
(
[storage:ArrayObject:private] => Array
(
)
)
)
)
知道如何将第二个Y数放入X ArrayObject吗?
答案 0 :(得分:1)
为什么不直接使用包含y和x
的对象 class coordinates{
public __constructor($x, $y){
$this->x = $x;
$this->y = $y;
}
private $x;
private $y;
public function setX($x){
$this->x = $x;
}
public function setY($y){
$this->y = $y;
}
public function getX(){
return $this->x;
}
public function getY(){
return $this->y;
}
}
$cordinate = new coordinates($x, $y);
$collectionCordinates[] = $cordinate;