【发布时间】:2016-08-02 10:33:19
【问题描述】:
$post_name = strtolower(preg_replace('/[^a-z0-9]+/i', '-', $post_title));
当我在帖子标题末尾放置空格或 ) 时,此代码会出错。
如何解决这个问题?
'/[^a-z0-9]+/i' 是什么意思?
谢谢。
【问题讨论】:
-
让我们从另一端开始吧。你想允许什么作为标题?任何事物?或者有什么限制?
-
在这里您可以看到 preg_replace 的运行情况phpliveregex.com/p/fiJ(先按下 preg_replace 按钮)。该函数将除 a-z 和 0-9 之外的所有字符替换为“-”。我认为是 strtolower() 造成了错误,而不是 preg_replace。如上所述,只需告诉我们您想要发生的事情,我或其他人会帮助您。
-
地球在呼唤,请接听。
-
让帖子标题如下“这是我的文章(第 1 部分)”我想成为 this-is-my-article-part-1 所以我想删除 () 和空格。我想成为 this-is-my-article-part-1
标签: url preg-replace