次の URI があります。
/belt/belts/fk/product/40P35871
そして、最後の / の後の最後のコンテンツを取得したいと思います。この場合は40P35871です。これどうやってするの?
どうexplode
ですか?
$elements = explode('/', $input);
$productId = end($elements);
これはまったく別の解決策です。 (そして最も簡単です!)
使用するbasename
$var = "/belt/belts/fk/product/40P35871";
echo basename($var);
出力:
40P35871
ちょうどこのような
$str = '/belt/belts/fk/product/40P35871';
$arr = explode('/', $str);
$var = array_pop($arr);
var_dump($var);
また
$var = substr($str, strrpos($str,'/') + 1);
これを試して
$result = preg_replace('%(/(?:[^/]+?/)+)([^/]+)\b%', '$2', $subject);
正規表現は使用しないでください。この場合、あなたは次のように行動することができます
myUrl = $_SERVER[REQUEST_URL];
$number = substr(strrpos(myUri,'/')+1);
regex
。最後のコンテンツを見つけて、次を使用して取得しsubstr()
ます。
$lastcontent = substr(strrchr($uri, "/"), 1);
これを使って:
echo preg_replace('/[a-z0-9]$/i', '$1', $url);
これにより、最後の位置が得られます
注:ただし、このURLのみでは、クエリ文字列がこれを役に立たなくし、これが機能するために最初に同じURLを解析する必要があります