Php 排除数组中的元素

Php 排除数组中的元素,php,Php,我有一个叫做$companys的二维数组: $companies[] = array( 'id' => $row['id'], 'name' => $row['name'], 'contactid' => $row['contactid'], 'firstname' => $row['firs

我有一个叫做$companys的二维数组:

           $companies[] = array(
                    'id' => $row['id'],
                    'name' => $row['name'],
                    'contactid' => $row['contactid'],
                    'firstname' => $row['firstname'],
                    'lastname' => $row['lastname'],
                    'email' => $row['email']        
            );
我想把它分配给一个新数组,但只包括firstname、lastname和email,而不包括其他数组

           $companies[] = array(
                    'id' => $row['id'],
                    'name' => $row['name'],
                    'contactid' => $row['contactid'],
                    'firstname' => $row['firstname'],
                    'lastname' => $row['lastname'],
                    'email' => $row['email']        
            );

如何执行此操作?

简单根据实际阵列创建一个新阵列:

           $companies[] = array(
                    'id' => $row['id'],
                    'name' => $row['name'],
                    'contactid' => $row['contactid'],
                    'firstname' => $row['firstname'],
                    'lastname' => $row['lastname'],
                    'email' => $row['email']        
            );
$newArray = array();
foreach ($companies as $company) {
    $newArray[] = array(
        'firstname' => $company['firstname'],
        'lastname' => $company['lastname'],
        'email' => $company['email'],
    );
}
您也可以在构建原始阵列时执行此操作。

使用
array\u map()
(不太优雅):

           $companies[] = array(
                    'id' => $row['id'],
                    'name' => $row['name'],
                    'contactid' => $row['contactid'],
                    'firstname' => $row['firstname'],
                    'lastname' => $row['lastname'],
                    'email' => $row['email']        
            );

使用for循环并将您想要的值传输到新阵列中没有更优雅的方式吗?我不知道优雅,但据我所知,您可以使用或不使用,但可能会有,因为我不知道一切。