我的字符串$ podcast->标题返回如下内容:
Artist Name - The Title
我正在使用以下两行代码:
$this_dj = substr($podcast->title, 0, strpos($podcast->title, "-"));
$this_dj = substr($this_dj, 0, -1);
第一行删除之后的所有内容(包括“ - ”),它留给我:
Artist Name
第二行删除末尾的空格。
我的问题是,我可以将这两行合并成一行吗?
我试过了:
$this_dj = substr($podcast->title, 0, strpos($podcast->title, "-"), -1);
但那没用。
答案 0 :(得分:1)
如果您的分隔符始终不变,则可以使用explode
,这样会更容易,请参阅下面的示例。
$string = 'Artist Name - The Title';
$array = explode(' - ', $string);
print_r($array);
将输出
Array
(
[0] => Artist Name
[1] => The Title
)
使用list
可以直接填充变量
list($artist,$song) = explode(' - ', $string);
print $artist . PHP_EOL;
print $song . PHP_EOL;
将输出
Artist Name
The Title
没有空格:)
答案 1 :(得分:1)
使用trim()命令:
$this_dj = trim(substr($podcast->title, 0, strpos($podcast->title, "-")));
答案 2 :(得分:0)
它也适用于您的示例,只需移动子字符串结束点:
$this_dj = substr($podcast->title, 0, strpos($podcast->title, "-") - 1);