PHP OOP - return 数组到 class(?)
PHP OOP - return arrays into class(?)
我正在尝试使用 OOP 方式。我有一堆 return 相同格式的数组的方法。我想保证 class 的用户知道 return 会编辑什么。我该怎么做呢?请原谅我,因为我不确定描述我的问题的正确术语。
class myModel {
public function getArray1(){
$data = array();
$id = array();
....
return array('data'=>$data, 'id'=>$id); <== HOW TO GUARANTEE RETURN FORMAT
};
public function getArray2(){
$data = array();
$id = array();
....
return array('data'=>$data, 'id'=>$id); <== HOW TO GUARANTEE RETURN FORMAT
};
public function getArray3(){
$data = array();
$id = array();
....
return array('data'=>$data, 'id'=>$id); <== HOW TO GUARANTEE RETURN FORMAT
};
}
您可以尝试为返回值定义额外的class:
class returnArray {
$data = array();
$id = array();
function construct($data,$id) {
$this->data = $data;
$this->id = $id;
}
}
//...
public function getArray1(){
$data = array();
$id = array();
....
return new returnArray('data'=>$data, 'id'=>$id);
};
然后您可以将访问器添加到 returnArray
class 或将其保留为 public 如果需要,甚至可以在必要时实现 __toString()
。
我正在尝试使用 OOP 方式。我有一堆 return 相同格式的数组的方法。我想保证 class 的用户知道 return 会编辑什么。我该怎么做呢?请原谅我,因为我不确定描述我的问题的正确术语。
class myModel {
public function getArray1(){
$data = array();
$id = array();
....
return array('data'=>$data, 'id'=>$id); <== HOW TO GUARANTEE RETURN FORMAT
};
public function getArray2(){
$data = array();
$id = array();
....
return array('data'=>$data, 'id'=>$id); <== HOW TO GUARANTEE RETURN FORMAT
};
public function getArray3(){
$data = array();
$id = array();
....
return array('data'=>$data, 'id'=>$id); <== HOW TO GUARANTEE RETURN FORMAT
};
}
您可以尝试为返回值定义额外的class:
class returnArray {
$data = array();
$id = array();
function construct($data,$id) {
$this->data = $data;
$this->id = $id;
}
}
//...
public function getArray1(){
$data = array();
$id = array();
....
return new returnArray('data'=>$data, 'id'=>$id);
};
然后您可以将访问器添加到 returnArray
class 或将其保留为 public 如果需要,甚至可以在必要时实现 __toString()
。