2010-11-29 74 views
1

我有添加到數據庫的條目的功能,代碼我目前所面對的是如下:PHP - 添加多個數據庫條目

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; 
} 

我想要做的,是使用相同的功能是什麼在$ rolekey後面添加另外兩個2和3的數據數組,以便使用一個函數添加3個數據,rolekey1,rolekey2和rolekey3

我該如何去做?

回答

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; 
    } 

如果你在你的問題給予更多的細節,我或許可以給你更好的答案。

+0

我只是希望OP給你更多的細節:) – Gordon 2010-11-29 05:18:40

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; 
}