これがあなたの望むことをするかどうかは正確にはわかりませんが、ループして新しい配列にコピーすると、基本的に結果が得られるはずです(文字列のどの部分が必要か不要かをどのように決定するかを明確にしたら)
$myarray = array(…);
$new_array = array();
$unwanted = 'some_string';
foreach($myarray as $k => $v) {
$new_value = preg_replace("/^$unwanted/", '', $v); # replace unwanted parts with empty string (removes them);
if(!empty($new_value)) { # did we just remove the entry completely? if so, don't append it to the new array
$new_array[] = $v; # or $new_array[$k] if you want to keep indices.
}
}
配列エントリを結合し、結果として文字列を取得したい場合はimplode
、PHPの関数を使用します。$string = implode(' ', $new_array);