正则表达式从来都不是我的优点之一,这个让我很难过。作为项目的一部分,我想在PHP中开发一个SEO链接类。通过Apache处理mod_rewrite
对我来说相当简单,而且效果很好。
但是,我想创建一个能够根据我传入的动态URL生成SEO链接的函数作为函数的第一个(也是唯一的)参数。
例如,这将是PHP中的函数调用:
<a href="<?= SEO::CreateLink('blog/post.php?post=123&category=5') ?>" title="Blog Post Title">Blog Post Title</a>
函数CreateLink
然后将分析传入的字符串,并输出如下内容:
blog/blog-post-title
博客文章的URL存根已存储在数据库中。我认为实现这一目标的最佳方法是分析传入的动态URL字符串,并生成要分析的关联数组。我的问题是,正则表达式将采用URL并在PHP中生成以下关联数组?
link_pieces['page_type'] = 'blog/post';
link_pieces['post'] = 123;
link_pieces['category'] = 5;
哪里page_type
是没有扩展名的基本目录和请求页面,其他数组值是请求变量?