定义

A slug is the part of a URL which identifies a page using

human-readable keywords.

To make the URL easier for users to type, special characters are often

removed or replaced as well. For instance, accented characters are

usually replaced by letters from the English alphabet; punctuation

marks are generally removed; and spaces (which have to be encoded as

%20 or +) are replaced by dashes (-) or underscores (_), which are

more aesthetically pleasing.

上下文

我开发了一个照片共享网站,用户可以在其上传,分享和查看照片.

所有页面都是自动生成的,没有我对标题的控制.因为照片的标题或用户的名称可能包含重音字符或空格,我需要一个功能来自动创建slugs并保持可读的URL.

我创建了以下函数来替换重音字符(èçëçî),删除标点符号和错误字符(#@&〜^!)并以破折号转换空格.

问题

>您如何看待这个功能?

>你知道创建slu的任何其他功能吗?

function sluggable($str) {

$before = array(

'àáâãäåòóôõöøèéêëðçìíîïùúûüñšž',

'/[^a-z0-9\s]/',

array('/\s/', '/--+/', '/---+/')

);

$after = array(

'aaaaaaooooooeeeeeciiiiuuuunsz',

'',

'-'

);

$str = strtolower($str);

$str = strtr($str, $before[0], $after[0]);

$str = preg_replace($before[1], $after[1], $str);

$str = trim($str);

$str = preg_replace($before[2], $after[2], $str);

return $str;

}

解决方法:

标签:friendly-url,slug,php,string,seo,php

来源: https://codeday.me/bug/20190917/1809106.html

php生成复杂url,php – 生成SEO友好URL(slugs)相关推荐

  1. url wordpress_什么是WordPress中的SEO友好URL结构

    url wordpress Have you ever wondered what's the most SEO friendly permalink structure in WordPress? ...

  2. SEM URL标记生成和解码工具发布

    URL标记 URL标记,就是通过对访问URL进行特定标记,从而实现对流量来源进行区分,例如:www.a.com/zt/?from=bdtg.pc,很明显,这个加了标记的URL告诉我们,这个流量来自百度 ...

  3. php图片生成缩略图_php实现根据url自动生成缩略图的方法

    本文实例讲述了php实现根据url自动生成缩略图的方法,是非常实用的功能.分享给大家供大家参考.具体方法如下: 原理:设置apache rewrite ,当图片不存在时,调用php创建图片. 例如: ...

  4. 根据url动态生成二维码

    根据url动态生成二维码的工具类,没有细研究,先贴出来,有兴趣自己深究.public class QRCodeUtil {public static BufferedImage createImage ...

  5. 根据url地址生成二维码,微信扫描二维码可直接打开网址

    需求:根据url地址生成二维码,微信扫描二维码可直接打开网址 html代码: <input id="text" type="text" value=&qu ...

  6. ajax预加载html seo,AJAX网页如何实现SEO友好

    在WEB网页上应用AJAX技术可以提高用户体验,但是对于SEO却不够友好,因为搜索引擎不会执行JS,而AJAX网页的内容都是动态生成(即网页展示的内容都是在浏览器端通过JS动态生成的).既要保留AJA ...

  7. jar 工程我怎么在网页上url访问某一个方法_url及url参数与seo网站优化的关系

    短视频,自媒体,达人种草一站服务 首先我还是援引下百度百科关于url的定义. 统一资源定位符(Uniform Resource Locator,缩写为URL)是对可以从互联网上得到的资源的位置和访问方 ...

  8. java 随机生成手机号_Java随机密码生成并和邮箱、手机号匹配

    废话不多说了,直接给大家贴java代码了,代码有所注释,写的不好,还请各位大家多多关照. 代码如下所示: package com.alibaba.uyuni.common.util; import j ...

  9. 本地ca,以及根证书的生成,服务器证书生成,nginx https配置等

    环境: centos7.6 参考: https://blog.51cto.com/liuzhengwei521/2120535?utm_source=oschina-app 工具: 和openssl是 ...

最新文章

  1. 加大力度改革 成都公安提高服务金融安防建设能力
  2. 【C 语言】指针间接赋值 ( 直接修改 和 间接修改 指针变量 的值 | 在函数中 间接修改 指针变量 的值 | 在函数中 间接修改 外部变量 的原理 )
  3. SQLSEVER 中的那些键和约束
  4. 铁路售票系统_黑龙江一学生购买的火车票上惊现“学猪”字样!铁路部门给出回应...
  5. [日常训练]training
  6. 7.3.Zeng_Cache(4) --- 后端
  7. Atitit 数据处理查询 中的异常标准化草案 jpa jdbc hb  oql规范attilax总结
  8. 用matlab编模糊pid程序,实例:MATLAB/Simulink实现模糊PID控制
  9. JS实现中文转拼音首字母和五笔简码
  10. (python版)《剑指Offer》JZ58:对称的二叉树
  11. Python 中的 dbm 模块
  12. 蓝桥杯 算法训练 跳马
  13. 如何在面试中回答「你最大的缺点是什么」?
  14. 基于matlab的DTMF信号的产生和检测(1)
  15. 互联网时代,机遇与挑战并存,我们该如何应对?
  16. 手动实现一个满足promises-aplus-tests的Promise
  17. unity未探索区域迷雾_Unity的探索性测试
  18. 架构设计:系统存储(1)——块存储方案(1)
  19. 基于内容的图像检索系统设计与实现--颜色信息--纹理信息--形状信息--PHASH--SHFT特征点的综合检测项目,包含简易版与完整版的源码及数据!
  20. apdl与传统计算机语言,用Ansys APDL语言实现复杂边界条件的加载

热门文章

  1. C语言如何实现读写SOC中的寄存器
  2. Win7添加快速启动栏
  3. 深耕母婴行业八年后:宝宝树发力电商 谋求上市
  4. system3之:2 DHCP服务
  5. 94款超级漂亮的box-shadow样式 复制即用
  6. 你所不知道的华为快服务野心
  7. Mastering Embedded Linux Programming 学习 (一)嵌入式交叉编译工具链的构建,基于crosstool-NG
  8. 如何编译Fate-Serving
  9. Valine评论系统不能使用
  10. 新开普:公司与联通支付有限公司在数字人民币产品和解决方案等领域建立合作关系