Estou tentando retirar qualquer coisa antes de ‘=’, bem como palavras específicas

Eu tenho uma matriz que eu preciso passar, tirar tudo antes ‘=’ incluindo o ‘=’, bem como certas palavras. Em seguida, separe o resto do conteúdo da matriz por ‘,’.
Aqui estão os conteúdos da matriz: $ rows [‘role’]

$rows['role'][0] = cn=Service Desk Customer,ou=Groups,dc=,dc=co,dc=uk $rows['role'][1] = cn=User,ou=Groups,dc=,dc=co,dc=uk $rows['role'][2] = cn=Site Administrator,ou=Groups,ou=Kiev,ou=Ukraine,ou=Euro-Med,dc=,dc=co,dc=uk $rows['role'][3] = cn=Agent Biometric,ou=Groups,ou=Tirana,ou=Albania,ou=Euro-Med,dc=,dc=co,dc=uk $rows['role'][4] = cn=Agent Welcome,ou=Groups,ou=Tripoli,ou=Libya,ou=Euro-Med,dc=,dc=co,dc=uk 

Depois disso, eu preciso classificar os resultados em duas matrizes, uma para papel, incluindo Service Desk Client, Site Administrator, etc. e uma para localização que includeá Tripoli, Líbia, Albânia.

Gostaria de acabar com uma seqüência ou matriz de $ papers que só contém itens como Service Desk Client, Site Administrator, ect. e, em seguida, uma seqüência ou matriz de localização de $ que contém todas as informações de localização.

Aqui está o que tenho até agora. Posso remover tudo o que estou procurando remover até agora. O único problema que estou tendo é puxar itens começando com cn = para uma variável de $ papers (de preferência com cn = removido) e ou = para uma variável de $ locations.

 $removes = array( 'dc=','ou=Groups','cn=User','dc=co','dc=uk'); $rows[$i] = array( 'picture' => $jpeg, 'first' => $info[$i]["givenname"][0], 'last' => $info[$i]["sn"][0], 'mail' => $info[$i]["mail"][0], //'role' => $info[$i]["memberof"][0], ); foreach($info[$i]['memberof'] as $key => $value){ $replace = str_replace($removes,'',$value); $rows[$i]['role'][$key] = $replace; } array_filter($rows[$i]['role']); print_r ($rows[$i]['role']); } ldap_close($ds) 

Você pode tentar isso:

 $result = array_map(function ($val) { return substr($val,3, strpos($val, ',') - 3 ); }, $rows['role']); print_r($result); 

Você pode usar:

 foreach ($rows['role'] as $r) { print_r ( explode(',', preg_replace('/(^|,)\K[^=]*=/', '', $r)) ); } 

Para as 2 primeiras linhas, ela dá essa saída:

 Array ( [0] => Service Desk Customer [1] => Groups [2] => domain [3] => co [4] => uk ) Array ( [0] => User [1] => Groups [2] => domain [3] => co [4] => uk )