2011-09-11 12 views
-5

私はPHPを使用してデータベースからURLを生成しようとしています。私はindex.php一部ないことを除いて同じURLを返すためにbase_urlを使用しようとしているhttp://www.domain.com/index.php/pid-variable-from-SQLPHP base_urlがサイトを返すと、変数文字列を追加しますか?

を示し(スニペット)

$data['url'] = site_url('/'.$row['pid']); 

これは、これまでのスクリプトがあります。これは、/pid-stuff部分のチョップを除いて動作します。

助けが必要ですか?または、なぜこのコードが機能しないのですか?

$data['url'] = base_url('/'.$row['pid']); 
+3

DUDEは、私たちのFAQを読んでください。何回質問を作成して閉じたり移動したりしたのですか?FAQを読んで、まずサイトを見てください。 – Chopper3

+0

フレームワークを使用していますか、上記の機能はカスタムですか? 'site_url'と' base_url'は私が知っている限り、コアPHP関数の一部ではないからです。 – Shef

+1

これは 'site_url'と' base_url'が何をするかを見ることなしには意味がありません –

答えて

0

正規表現を使用して、URLのindex.php部分を抜き出すことができます。

$data['url'] = preg_replace("/(^http:\/\/.*?)\/(.*?)(\/.*)/", '$1$3', site_url('/'.$row['pid'])); //Should return http://www.domain.com/pid-variable-from-SQL 
+0

ありがとう!初めて使用したときは、変数を使用するように設定されていたので、=記号の前の部分を破棄しました。 –