【发布时间】:2013-09-10 22:48:27
【问题描述】:
我想要做的就是从字符串中获取第一个单词,它确实有效,但是我如何也摆脱逗号,现在我正在获取名称,我希望它只显示名称后面没有逗号或字符。
<?php $pet_name = $pet->pet_name(); $arr = explode(' ',trim($pet_name));?>
<h1><?= $arr[0] ?></h1>
【问题讨论】:
标签: php
我想要做的就是从字符串中获取第一个单词,它确实有效,但是我如何也摆脱逗号,现在我正在获取名称,我希望它只显示名称后面没有逗号或字符。
<?php $pet_name = $pet->pet_name(); $arr = explode(' ',trim($pet_name));?>
<h1><?= $arr[0] ?></h1>
【问题讨论】:
标签: php
$name = str_replace(',','',$arr[0]);
str_replace 用于将逗号替换为空
【讨论】:
我看到了两种方法。
第一种方式。我建议的方式:
rtrim($arr[0], ',');
第二种方式。这样做的问题是,如果最后一个字符不是逗号,它也会删除它:
substr($arr[0], 0, strlen($arr[0]) - 1);
【讨论】:
preg_split 在这里可能比explode 更有帮助:
<?php
$pet_name = $pet->pet_name();
$arr = preg_split('/[ ,]/', $pet_name, null, PREG_SPLIT_NO_EMPTY);
?>
这将在拆分名称时将任何空格和逗号序列视为分隔符。
explode(' ', 'Smith, John'); // ['Smith,', 'John']
explode(' ', 'Smith,John'); // ['Smith,John']
preg_split('/[ ,]/', 'Smith, John', null, PREG_SPLIT_NO_EMPTY); // ['Smith', 'John']
preg_split('/[ ,]/', 'Smith,John', null, PREG_SPLIT_NO_EMPTY); // ['Smith', 'John']
【讨论】: