正則表達式從來不是我的強項之一,而這一個讓我難住。作爲一個項目的一部分,我想在PHP中開發一個SEO鏈接類。通過Apache處理mod_rewrite
對我來說相當簡單,而且效果很好。如何在PHP中將URL分解爲其組成部分?
但是,我想創建一個函數,它能夠基於我作爲函數的第一個(也是唯一的)參數傳入的動態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
是基本目錄和頁面請求不帶擴展,而另一個數組的值是該請求瓦爾?
謝謝 - 男孩我現在感覺很傻。我從來沒有遇到過這些功能......! – BenM 2011-06-02 17:37:56