【发布时间】:2017-05-01 01:15:29
【问题描述】:
我有很多产品名称和品牌。一些产品名称包含品牌。有些没有。
我想删除产品名称中的品牌。
substr($name,strlen($brand)); 导致无品牌名称出现问题。
然后我使用此代码。但又出问题了。
$brand = "Palm See";
$name = "Palm See Second Third ... ";
$name = "See Season ... ";
$name = " See Sean Paul ";
$name = ltrim($name, $brand);
echo $name; // cond Third ... desired : Second Third ...
echo $name; // son ... desired : See Season ...
echo $name; // n Paul desired : See Sean Paul
【问题讨论】:
-
ltrim()修剪列表中的任何 字母('P' 和 'a' 和 'l' 和 'm' 和'S' 和 'e' 以及您的示例中的空格);不是特定的字符串 -
str_replace($brand, "", $name );好吗? -
是的,
str_replace($brand, "", $name );应该可以工作,但这会从字符串的任何部分删除它。如果您只想从头开始删除它,您应该检查字符串是否也以$brand开头。所以你应该做类似if (strpos($name, $brand) === 0) { str_replace($brand, "", $name ); }的事情。这里的if检查字符串是否以$brand开头