我有这段代码,想使用str_replace删除|每种尺寸后都会出现
旧代码:
<?= ($line ["sizes"])."\n"; ?>
新代码:
<?= $line = "One size"; $sizes = str_replace("|", "", $line); print $line; "\n"; ?>
但它没有显示像Small Medium Large这样的大小,就像旧代码一样。
感谢名单。
答案 0 :(得分:0)
我不明白你的问题,但如果我只看到句子
我有这段代码,想使用str_replace删除|每种尺寸后都会出现
您应该更好地利用explode
和implode
代替str_replace
:
$sizeStr = "1|2|3";
$sizes = explode("|", $sizeStr); // Array("1", "2", "3");
echo implode("\\n", $sizes);
这将显示
1
2
3
答案 1 :(得分:0)
当我运行新代码时,我得到以下输出:
一个sizeOne size
我假设你的新代码可能也是你得到的。以下是发生的事情:
$line = "One size";
//1. Sets $line equal to "One size" (and prints it because of the short tag.)
$sizes = str_replace("|", "", $line);
//2. Replaces '|' with '' in the string "One size" (it isn't there.)
print $line;
//3. Prints "One size" again.
如果您的旧代码几乎完成了您想要的操作(除了打印额外的栏),可能您只需要添加str_replace就可以了。
<?= (str_replace('|', '', $line["sizes"]))."\n"; ?>