在函数参数中传递数组是否可以?例如,
function something()
{
if ($this->db->insert($this->table_name, $data)) {
$data = array(
'user_id' => $this->db->insert_id();
'first_name' => $this->form_validation->set_value('first_name'),
'last_name' => $this->form_validation->set_value('last_name'),
);
if ($activated)
$this->create_profile($data);
return array( //not sure why i'm returning this
'user_id' => $user_id,
'first_name' => $first_name,
'last_name' => $last_name,
} );
return NULL;
}
然后将其传递给
private function create_profile($data)
{
return $this->db->insert( $this->profile_table_name, $data )
}
脚本来自我修改过的codeigniter插件,所以我试图不要过多地使用它。
答案 0 :(得分:2)
将数组传递给函数绝对没问题。许多PHP自带的内置array_*()
函数接收数组参数,然后返回数组。
至于从函数返回数组 - 这是从单个函数返回多个值的绝佳方法。
答案 1 :(得分:1)
在函数参数中传递数组是否可以? =&gt; 是<!/强>
答案 2 :(得分:1)
如果需要返回多个值,则数组就是这样做的一种方式。
您也可以返回一个对象,只需实例化stdClass
并设置属性。
答案 3 :(得分:1)
可以将array
作为参数传递,也可以返回array
作为结果。在PHP
我们一直这样做。
也可以通过其他语言传递和返回数组...就像在Python
中他们经常这样做一样,例如process_parameters(*parameters)
。
如果你传递一个物体,它甚至可以!或者返回一个对象......就像这样:
$dbConnection = get_db_connection('mysql'); // $dbConnection is an instance of MySQLDbConnection now