像http:webmail.wipro.com#a:?b;
我怎样才能打破一个网址,并使用PHP
我想打破这个网址,并只存储网络邮件和Wipro到我的数据库的关键字存储到数据库中。请任何人都可以帮我解决这个问题。使用PHP。
像http:webmail.wipro.com#a:?b;
我怎样才能打破一个网址,并使用PHP
我想打破这个网址,并只存储网络邮件和Wipro到我的数据库的关键字存储到数据库中。请任何人都可以帮我解决这个问题。使用PHP。
您应该使用parse_url函数检索零件,然后根据您的意愿使用(在您的情况下,将它们保存在数据库中)。
这里是从手动测试代码/输出:
<?php
$url = 'http://username:[email protected]/path?arg=value#anchor';
print_r(parse_url($url));
echo parse_url($url, PHP_URL_PATH);
打印如下:
Array
(
[scheme] => http
[host] => hostname
[user] => username
[pass] => password
[path] => /path
[query] => arg=value
[fragment] => anchor
)
/path
您应该使用正则表达式。如果你运行类似
preg_match('http:(.*?).(.*?).com#a:?b;', 'http:webmail.wipro.com#a:?b;', $matches);
$ matches [1]应该说webmail和$ matches [2]应该包含wipro。
有更多正则表达式和preg_match文档on the PHP site。
它可以有任何选项,如 http://stackoverflow.com/questions/1879683/how-can-i-break-an -url-and-store-the-key-words-into-database-using-php 如果是这种情况,我想存储stackoverflow,问题,中断,存储,单词,数据库 那么怎么可能使用相同的查询 – sangeetha 2009-12-10 09:34:22
这听起来像你要找的是识别网址中的任何单词。在这种情况下,试试这个正则表达式:
preg_match_all ('/\b(\w{4,})\b/', $url, $matches);
$matches
将包含至少4个
<?php $ url =“http://webmail.wipro.com”; preg_match_all('/ \ b(\ w {4,})\ b /',$ url,$ matches); $ n = count($ matches); echo $ n; 为($ I = 0; $ I <$ N; $ I ++){ \t \t 回声 “片$ I = $匹配[$ i]于
”; \t } > 出来放: 2Piece 0 =阵列 片1 =阵列 –
sangeetha
2009-12-10 11:33:09
为什么会出现这样的输出plz帮助我走出 – sangeetha 2009-12-10 11:33:47
任何一个可以帮助我 – sangeetha 2009-12-10 11:56:15
首先字状的字符串数组我会问,你澄清你的问题是什么:我不t知道你想要的关键词(对我来说这意味着你需要变量,可能是'a'和'b'?)或存储在数据库中的子域('webmail')和域('wipro')。另外,你使用的是什么数据库? – 2009-12-10 09:13:23
我需要存储在我的数据库中的子域('webmail')和域('wipro')mysql – sangeetha 2009-12-10 09:14:37