http://site.com/people/593765-barack-obama?sort=popularのような URL があります。
リンクの ID 部分だけを取得するにはどうすればよいですか? この例では 593765 です。
なのでパターンはhttp://site.com/people/{somenumber}-{anythingelse}
正規表現を使用して取得する方法がわかりません。
http://site.com/people/593765-barack-obama?sort=popularのような URL があります。
リンクの ID 部分だけを取得するにはどうすればよいですか? この例では 593765 です。
なのでパターンはhttp://site.com/people/{somenumber}-{anythingelse}
正規表現を使用して取得する方法がわかりません。
preg_match('#/(\d+)-#', $url, $m);
echo $m[1]; // 593765
正規表現パターン:
#/(\d+)-.+\??#
使用例:
preg_match('#/(\d+)-.+\??#', 'http://site.com/people/593765-barack-obama?sort=popular', $matches);
var_dump($matches[1]);
出力:
string(6) "593765"
正規表現を使用:
/people\/([0-9]+)\-/
<?php
//$pattern = $_SERVER['REQUEST_URI'];
$pattern = "http://site.com/people/593765-barack-obama?sort=popular";
preg_match('/people\/([0-9]+)\-/', $pattern, $match);
if (isset($match[1])) {
echo "The number is: " . $match[1];
}
?>
shorts は URL の「キャッチ」ファイルであり、{somenumber}-{anythinelse} は取得するパラメーターであると思います。パラメーターを展開するだけです。
list($iNumber, $sAnything) = explode("-", $sParam1);
あなたはそれをフィルタリングする必要があります
/shots/593765-brainzap?list=following
これは$_SERVER['REQUEST_URI']
ページのです。