在PHP中如何将数据作为数组从DB获取到数组变量
在数据库postgresql中,我将字段设置为整数[]。在这里,我有这样的数据:{2,3,55122}当我从数据库中获取这些数据时在PHP中如何将数据作为数组从DB获取到数组变量,php,postgresql,Php,Postgresql,在数据库postgresql中,我将字段设置为整数[]。在这里,我有这样的数据:{2,3,55122}当我从数据库中获取这些数据时 $rs = getData(); $abc = $rs['raw']; var_dump($abc); 输出为 array(1) { [0]=> string(18) "{2,3,55,122}" } 但我需要这样的数组数据: array(3) { [0]=> string(2) "2" [1]=> string(2)
$rs = getData();
$abc = $rs['raw'];
var_dump($abc);
输出为
array(1) {
[0]=>
string(18) "{2,3,55,122}"
}
但我需要这样的数组数据:
array(3) {
[0]=>
string(2) "2"
[1]=>
string(2) "3"
[2]=>
string(2) "55"
[3]=>
string(2) "122"
}
如何从数据库层或php中执行此操作。
是否只有一种方式使用修剪和分解
向上
ZEND中的getData函数
private function getData(){
$select = $this->objDB->select()
->from(array('tb' => 'table'), array('raw',))
->where('id = 10');
return $this->select($select,true);
}
这是一个两步流程,通过内置功能很容易解决:
$abc = explode( ',' ,str_replace( array('{', '}') , '',$abc)) ;
从管柱上拆下支架,然后爆炸
或者如您所说,您可以使用trim:
$abc = explode( ',' , trim($abc , '{}')) ;
发布
getData()
函数,或者至少发布您如何构建select QUERI添加的getData函数。尽管对于这个问题,您可以使用PHP快速处理它。我认为您最好了解更多关于PostgreSQL中数组类型的工作原理。供您参考:所以最好将字段创建为varchar而不是integer[]?