我有一个向数据库添加条目的函数,我目前的代码如下:
function create_internal_role($rolename, $rolekey)
{
$data = array(
'name' => $rolename,
'key' => $rolekey.'1'
);
if (!is_null($res = $this->ci->internal_roles->create_role($data))) {
return $data;
}
return NULL;
}
我想要做的是,使用相同的函数添加另外2个数据数组,其中2和3位于$ rolekey后面,因此使用一个函数,它会添加3个数据,rolekey1,rolekey2和rolekey3
我将如何做到这一点?
答案 0 :(得分:1)
在不知道你的结构和你当前的问题措辞的情况下,明显的答案似乎就是:
function create_internal_role($rolename, $rolekey)
{
$ret = array();
$data = array(
'name' => $rolename,
'key' => $rolekey.'1'
);
if (!is_null($res = $this->ci->internal_roles->create_role($data))) {
$ret[] = $data;
}
$data = array(
'name' => $rolename,
'key' => $rolekey.'2'
);
if (!is_null($res = $this->ci->internal_roles->create_role($data))) {
$ret[] = $data;
}
$data = array(
'name' => $rolename,
'key' => $rolekey.'3'
);
if (!is_null($res = $this->ci->internal_roles->create_role($data))) {
$ret[] = $data;
}
return $ret;
}
如果您在问题中提供更多详细信息,我可能会给您更好的答案。
答案 1 :(得分:0)
也许这样的事情会起作用:
function create_internal_role($rolename, $rolekey)
{
// define role key indecies
$indexArray = array(1,2,3);
$ret = array(); // return array
// create roles
for(i=0; i<count($indexArray); $i++){
$data = array(
'name' => $rolename,
'key' => $rolekey.indexArray[$i]
);
if (!is_null($res = $this->ci->internal_roles->create_role($data))) {
$ret[] = $data;
}else{
$ret[] = null;
}
}
return $ret;
}