如何从爆炸的php字符串中删除第一个和最后一个字符

时间:2014-08-23 16:56:32

标签: php

我有一个我爆炸的字符串,它就像这样开始,

|Crime|Drama|Mystery|Suspense|Thriller|

我想删除第一个|和最后一个| 在爆炸之后,爆炸文本看起来像这样

Crime,Drama,Mystery,Suspense,Thriller

这可能吗?

这是我目前的代码。

<?php $explodegen = explode("|", $val->Genre); ?>
<?php
foreach($explodegen as $exploding){
echo "".$exploding.",";
} 
?>

6 个答案:

答案 0 :(得分:3)

substr($string, 1, -1);

然后爆炸。

答案 1 :(得分:0)

您有多种选择:

  • trim()在爆炸前剥离|的输入。

  • 结果数组上的
  • array_filter可删除空结果。

  • 如果只是输出使用strtr|转换为,(并事先应用trim)。

我个人宁愿使用preg_match_all("/[^|]+/")提取字符串。

答案 2 :(得分:0)

$input = '|Crime|Drama|Mystery|Suspense|Thriller|';
$delim = '|';
$exploded = explode($delim, trim($input, $delim));
echo implode(',', $exploded);

你应该

Crime,Drama,Mystery,Suspense,Thriller

答案 3 :(得分:0)

    带有PREG_SPLIT_NO_EMPTY标记的
  1. preg_splitpreg_split('/\|/', $in, PREG_SPLIT_NO_EMPTY);
  2. array_filterexplodearray_filter(explode('|', $in));
  3. explodetrimexplode('|', trim($in, '|'));
  4. 选项1是您在单个函数调用中唯一可以执行的操作。但是,选项3是保留空元素的唯一一个,如果它们位于字符串的中间。

答案 4 :(得分:0)

有很多方法可以做到这一点。这是一个选项:

$str = "|Crime|Drama|Mystery|Suspense|Thriller|";

echo $str = str_replace("|", ",", trim($str, "|"));

结果:

Crime,Drama,Mystery,Suspense,Thriller

See demo

答案 5 :(得分:0)

trim($string, "|")会从字符串的开头和结尾删除逗号。

rtrim($string, "|")会从字符串末尾删除逗号。