2013-08-28 4 views
2

I가 배열 : preg_replace이다 PHP는 KEY <-> VALUE

$array = array(
    '/news/show/([0-9])/([0-9])'=>'/news/show/id/$1/id2/$2', 
    '/home/ayz/([0-9])'=>'/home/xyz/sid/$1' 
); 

내가 그 결과 원하는 :

$array = array(
     '/news/show/$1/$2'=>'/news/show/id/([0-9])/id2/([0-9])', 
     '/home/ayz/$1'=>'/home/xyz/sid/([0-9])' 
    ); 

어떻게 할?

답변

1
$aReplace = array('$1'=>'([0-9])','$2'=>'([0-9])'); 
$aNewArray = array(); 
foreach ($array as $key=>$value){ 
    $nKey = str_replace(array_values($aReplace), array_keys($aReplace),$key); 
    $nValue = str_replace(array_keys($aReplace), array_values($aReplace),$value); 
    $aNewArray[$nKey]=$nValue; 
} 
관련 문제