我有字符串假设
$str = "abcdefghijklmno";
我想要一个像
这样的字符串$new_str = "acegikmo";
如果可能的话,我需要使用PHP函数的任何组合的最短方法。
答案 0 :(得分:1)
尝试以下代码
$string = 'teststring'; //if you want odd places characters then add whitespace at the starting of the string i.e ' teststing'
$array= str_split($string,1);
$new_string = '';
foreach($array $key=>$data){
if($key&1){
$new_string .= $data;
}
}
echo $new_string;
答案 1 :(得分:0)
使用以下代码
$string = 'abcdefghijklmno';
$new_str = '';
for($i=0;$i<=strlen($string); $i++){
if($i%2!=0){
$new_str.=$string[$i-1];
}
}
echo $new_str;
答案 2 :(得分:0)
您可以删除字符串的每个第二个字符:
$str = "abcdefghijklmno";
$str = preg_replace("/(\w)\w/","$1",$str);
示例:
abcdefghijklmno will become acegikmo
1234567890 will become 13579
答案 3 :(得分:0)
如果你正在运行 PHP 5.6 ,你可以使用array_filter:
$string = "abcdefghijklmno";
$newstring = join("",
array_filter
(
str_split($string),
function($k) {
return ($k % 2 == 0);
},
ARRAY_FILTER_USE_KEY
)
);
//acegikmo