私はこのようなURLを持っています...
http://www.mydomain.co.uk/this-is-the-text-i-would-like-please.php
/の後、.phpの前のテキストを削除し、-を削除したい
したがって、結果は次のようになります
これは私がお願いしたいテキストです
アイデアは、これをタイトルタグとして使用することです
substr、strrchrを試しましたが、必要なものを正確に取得する方法がわかりません。
どんな助けでも大歓迎です
どうもありがとう
私はこのようなURLを持っています...
http://www.mydomain.co.uk/this-is-the-text-i-would-like-please.php
/の後、.phpの前のテキストを削除し、-を削除したい
したがって、結果は次のようになります
これは私がお願いしたいテキストです
アイデアは、これをタイトルタグとして使用することです
substr、strrchrを試しましたが、必要なものを正確に取得する方法がわかりません。
どんな助けでも大歓迎です
どうもありがとう
を使用して行うことができますbasename()
$fname = basename('http://www.mydomain.co.uk/this-is-the-text-i-would-like-please.php');
$fname = str_replace('-', ' ', $fname);
<?php
$fname = basename('http://www.mydomain.co.uk/this-is-the-text-i-would-like-please.php');
$fname = str_replace('-', ' ', $fname);
$fname = substr($fname, 0, -4);
echo $fname;
?>
this is the text i would like please
ライブデモを参照
次のように、strrpos()とを使用して単純な文字列操作を使用できます。substr()
$str = 'http://www.mydomain.co.uk/this-is-the-text-i-would-like-please.php';
echo substr( $str, strrpos( $str, '/') + 1, -4);
これは出力します:
this-is-the-text-i-would-like-please
str_replace()次に、次のように を使用して、ダッシュをスペースに置き換えます。
$str = str_replace( '-', ' ', $str);
this is the text i would like please
別の方法として、 を使用してからparse_url()ダッシュを次のように置き換えます。
$str = parse_url( $str, PHP_URL_PATH);
$str = substr( $str, 1, -4); // strip off leading slash and .php from the end
$str = str_replace( '-', ' ', $str);
これにより、目的の出力も得られます。
最後に、文字列を操作しない最も簡単な方法はpathinfo()、次のように を使用することです。
$str = 'http://www.mydomain.co.uk/this-is-the-text-i-would-like-please.php';
$str = pathinfo( $str, PATHINFO_FILENAME);
$str = str_replace( '-', ' ', $str);
$_SERVERPHP の配列を使用することもできます。変数$_SERVER["REQUEST_URI"]は、サーバー名の後のすべてを提供します。この場合、「/this-is-the-text-i-would-like-please.php」になります。
その後、好きな文字列関数を実行できます。explode()と を使用した例を次に示しsubstrます。
$noslash = substr($_SERVER['REQUEST_URI'], 1);
/* $noslash = "this-is-the-text-i-would-like-please.php" (no leading slash)*/
$parts = explode($noslash, ".");
/*
* $parts[0] = "this-is-the-text-i-would-like-please"
* $parts[1] = "php"
*/
$title_tag = $parts[0];
整形でごめんなさい。
nickb と同様ですが、 - も削除します。
echo str_replace('-',' ',substr( $str, strrpos( $str, '/') + 1, -4));
どちらが出力されますか
this is the text i would like please
または、 %20 が必要ない場合は、次のようになります。
echo str_replace('%20',' ',str_replace('-',' ',substr( $str, strrpos( $str, '/') + 1, -4)));