我看过很多帖子以各种形式回答这个问题,但不知何故,似乎没有一个能完全解决我的问题。
PHP 5.5.8 +代码触发器
完整画面:
SQL查询生成一个部门名称数组。
$strSQL = "SELECT DISTINCT DepartmentName FROM ...
$query=$this->db->query($strSQL);
$data=$query->result_array();
我把数组变平,使它变得非常简单。
$flatArray = array_column($data, 'DepartmentName');
array_unshift($flatArray, "");
return $flatArray;
然后返回控制器在窗体上创建下拉框。
但是,该数组的格式为:
[PGroups] => Array
(
[0] => Dept 1
[1] => Dept 2
[2] => Dept 3
.....
在我的(基于CodeIgniter的)视图中,我有以下内容:
`echo "<td>" . form_dropdown('PurchasingGroup', $PGroups). "</td>";`
这将创建一个HTML下拉列表,其中的选项是数值,而不是部门名称的实际文字。
我试图得到这样的结果:
["Dept 1"] => Dept 1
["Dept 2"] => Dept 2
["Dept 3"] => Dept 3
.....
..因为这样当我购买视图时,值选项将是放入SQL搜索以检索进一步信息的确切文本。
为了解决这个问题我试过
- 在SQL语句中执行一些操作,但这不会影响键名--死胡同
- 然后一个帖子说试试这个,但我不明白这是如何改变 key name的,它似乎只是改变了元素的值。
$arr[$新密钥] = $arr[$旧密钥];未设置($arr[$oldkey]);
它就在我眼前,但我却在原地打转。帮帮忙?
3条答案
按热度按时间z9ju0rcb1#
要替换旧的数组值,您必须执行一个非常简单的命令:
将输出:
kr98yfug2#
试试这个:
euoag5mw3#
试试这个。