我正在为名为$ alias的数据库插入Alias字段 我该如何编码(我使用php for mysql insert) 删除所有空格并用“ - ”替换空格(尝试将其更改为“weburl格式”,即删除空格)

由于

有帮助吗?

解决方案

这是我用来为SEF网址添加字符串的方法:

    $slug = trim(strtolower($value));
    $slug = preg_replace('/[^a-z0-9 _-]/', '', $slug);
    return preg_replace('/\s+/', '-', $slug);

可以在第一个正则表达式中添加其他允许的字符。

请注意,这不是Unicode,甚至不是完整的ISO-8891安全,嗯,但它会删除任何不是 a-z 的内容。也就是说,您可能需要事先规范化字符串(即,用它们的等效ASCII替换重音字符。)有很多SO问题和答案处理我以前见过的,但我找不到它们此时此刻。如果我偶然发现,我会在这里编辑它们。

其他提示

要删除空格,您需要 str_replace方法。但是,在使用URL时,您可能需要考虑 urlencode rawurlencode 方法。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top