PHP 将数组重写为字符串,
PHP rewrite array to string,
在这种情况下,例如,
我有来自 person_code => 1,2,3
数组的字符串,然后我想将该字符串更改为另一个字符串person_nama 数组 => name1, name2, name3
我试过我的代码:
public function Person_name($person_code)
{
$code= explode(',', $person_code);
$name=array();
for($i=0; $i<count($code); $i++){
$sql= Yii::app()->db->createCommand('select nm_person from tbl_person where kd_person="'.$code[$i].'";');
$name=$sql->queryRow();
}
$namearray= implode(',',$name);
return $namaarray;
}
但结果只是 return 数组中的最后一个人名,
谁能帮帮我??谢谢
我只是通过使用创可贴解决方案来回答这个问题,通常只是将结果推入数组。您当前的代码只是覆盖 $name
.
$name[] = $sql->queryRow();
但是
不要直接将变量插入查询字符串。停下来,您已经在使用一个带有有用查询构建器的良好框架。
与其对每个 ID 执行每个查询,不如将 WHERE IN
子句风格与构建器一起使用。
更好的未经测试的基本想法:
public function Person_name($person_code)
{
$persons = array();
$person_code = explode(',', $person_code);
if(!empty($person_code)) {
$result = Yii::app()->db->createCommand()
->setFetchMode(PDO::FETCH_COLUMN, 0)
->select('nm_person')
->from('tbl_person')
->where(array('IN', 'kd_person', $person_code)
->queryAll();
$persons = implode(', ', $result);
}
return $persons;
}
基于阅读 manual
在这种情况下,例如,
我有来自 person_code => 1,2,3
数组的字符串,然后我想将该字符串更改为另一个字符串person_nama 数组 => name1, name2, name3
我试过我的代码:
public function Person_name($person_code)
{
$code= explode(',', $person_code);
$name=array();
for($i=0; $i<count($code); $i++){
$sql= Yii::app()->db->createCommand('select nm_person from tbl_person where kd_person="'.$code[$i].'";');
$name=$sql->queryRow();
}
$namearray= implode(',',$name);
return $namaarray;
}
但结果只是 return 数组中的最后一个人名,
谁能帮帮我??谢谢
我只是通过使用创可贴解决方案来回答这个问题,通常只是将结果推入数组。您当前的代码只是覆盖 $name
.
$name[] = $sql->queryRow();
但是
不要直接将变量插入查询字符串。停下来,您已经在使用一个带有有用查询构建器的良好框架。
与其对每个 ID 执行每个查询,不如将 WHERE IN
子句风格与构建器一起使用。
更好的未经测试的基本想法:
public function Person_name($person_code)
{
$persons = array();
$person_code = explode(',', $person_code);
if(!empty($person_code)) {
$result = Yii::app()->db->createCommand()
->setFetchMode(PDO::FETCH_COLUMN, 0)
->select('nm_person')
->from('tbl_person')
->where(array('IN', 'kd_person', $person_code)
->queryAll();
$persons = implode(', ', $result);
}
return $persons;
}
基于阅读 manual