2

現在の URL を保持している文字列の値を変更しようとしています。私は次のようなものを取得しようとしています

http://myurl.com/test/begin.php?req=&srclang=english&destlang=english&service=MyMemory

のように見えるように

http://myurl.com/test/end.php?req=&srclang=english&destlang=english&service=MyMemory

交換begin.phpend.php

end.php変更できるように変数に格納する必要がありbegin.phpますが、静的文字列にすることができます。

私はこれを試しましたが、うまくいきませんでした:

$endURL   = 'end.php';
$beginURL = 'begin.php';
$newURL   = str_ireplace($beginURL,$endURL,$url);

編集:また、交換したい場合

http://myurl.com/begin.php?req=&srclang=english&destlang=english&service=MyMemory

http://newsite.com/end.php?req=&srclang=english&destlang=english&service=MyMemory

では、どうすればそれを行うことができますか?

4

3 に答える 3

1

URL のスクリプト ファイル名を置き換えたいと仮定すると、次のようなものを使用できます。

<?php 
  $endURL   = 'end.php';
  $url ="http://myurl.com/test/begin.php?req=&srclang=english&destlang=english&service=MyMemory";
  $pattern = '/(.+)\/([^?\/]+)\?(.+)/';
  $replacement = '${1}/'.$endURL.'?${3}';
  $newURL = preg_replace($pattern , $replacement, $url);

   echo "url : $url <br>";
   echo "newURL : $newURL <br>";
?>
于 2012-04-17T05:30:31.080 に答える
0

beigin.php から end.php へのアクセス方法を教えてください。end.php にフォームを送信して、POST または GET 変数を介して変数を渡すことができるようです。

ユーザーがいるページ (end.php、begin.php) を変更する唯一の方法は、そのページから別のページにリンクすることです。これにはページの更新が必要です。

于 2012-04-16T22:54:05.510 に答える
0

最近、このための PHP ファイルを作成しましたが、最終的には次のようになりました。

$vars = $_SERVER["QUERY_STRING"];
$filename = $_SERVER["PHP_SELF"];
$filename = substr($filename, 4);
// for me substr removed 'abc/' in the beginning of the string, you can of course adjust this variable, this is the "end.php"-variable for you.

if (strlen($vars) > 0) $vars = '?' . $vars;
$resultURL = "http://somewhere.com" . $filename . $vars;
于 2012-04-16T22:54:44.377 に答える