相关疑难解决方法(0)

使用PHP转换Microsoft Word特殊字符

我正在尝试转换由包含MS Word省略号和长划线的用户粘贴的Word文本,然后再进行处理.

我在这里找到了一个旧的解决方案http://www.codingforums.com/archive/index.php/t-47163.html,但它对我不起作用.例如,在替换省略号之后,变量返回为空.以前从未见过这样的事:

$src = "Long word dash – and weird Word ellipsis…";
$src = str_replace("‘", "'", $src);
$src = str_replace("’", "'", $src);
$src = str_replace("”", '"', $src);
$src = str_replace("“", '"', $src);
$src = str_replace("–", "-", $src);
$src = str_replace("…", "...", $src);
print $src;
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

php ms-word utf-8 character-encoding

18
推荐指数
3
解决办法
2万
查看次数

生成SEO友好URL(slugs)

定义

来自维基百科:

蛞蝓是识别使用人类可读关键字的页面的URL的一部分.

为了使用户更容易键入URL,通常也会删除或替换特殊字符.例如,重音字符通常被英文字母中的字母取代; 标点符号通常被删除; 和空格(必须编码为%20或+)由短划线( - )或下划线(_)代替,这些更美观.

上下文

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

所有页面都是自动生成的,没有我对标题的控制.因为照片的标题或用户的名称可能包含重音字符或空格,我需要一个功能来自动创建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;
}
Run Code Online (Sandbox Code Playgroud)

php string seo friendly-url slug

17
推荐指数
5
解决办法
5万
查看次数

标签 统计

php ×2

character-encoding ×1

friendly-url ×1

ms-word ×1

seo ×1

slug ×1

string ×1

utf-8 ×1