Changeset 20939
- Timestamp:
- 2011/05/18 13:10:30 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_11-dev/data/class/SC_Response.php
r20938 r20939 86 86 * アプリケーション内でリダイレクトする 87 87 * 88 * 内部で生成する URL の searchpart は、下記の順で上書きしていく。(後勝ち) 89 * 1. 引数 $inheritQueryString が true の場合、$_SERVER['QUERY_STRING'] 90 * 2. $location に含まれる searchpart 91 * 3. 引数 $arrQueryString 88 92 * @param string $location 「url-path」「現在のURLからのパス」「URL」のいずれか。「../」の解釈は行なわない。 93 * @param array $arrQueryString URL に付加する searchpart 94 * @param bool $inheritQueryString 現在のリクエストの searchpart を継承するか 95 * @param bool|null $useSsl true:HTTPSを強制, false:HTTPを強制, null:継承 89 96 * @return void 90 97 * @static … … 94 101 // url-path → URL 変換 95 102 if ($location[0] === '/') { 96 $netUrl = new Net_URL(); 97 $netUrl->path = $location; 103 $netUrl = new Net_URL($location); 98 104 $location = $netUrl->getUrl(); 99 105 } … … 133 139 134 140 $netUrl = new Net_URL($url); 135 $arrQueryString = array_merge($netUrl->querystring, $arrQueryString); 136 $netUrl->querystring = array(); 137 138 if ($inheritQueryString) { 139 if (!empty($_SERVER['QUERY_STRING'])) { 140 $netUrl->addRawQueryString($_SERVER['QUERY_STRING']); 141 } 142 } 143 144 foreach ($arrQueryString as $key => $val) { 145 $netUrl->addQueryString($key, $val); 146 } 147 148 $url = $netUrl->getURL(); 141 142 if ($inheritQueryString && !empty($_SERVER['QUERY_STRING'])) { 143 $arrQueryStringBackup = $netUrl->querystring; 144 // XXX メソッド名は add で始まるが、実際には置換を行う 145 $netUrl->addRawQueryString($_SERVER['QUERY_STRING']); 146 $netUrl->querystring = array_merge($netUrl->querystring, $arrQueryStringBackup); 147 } 148 149 $netUrl->querystring = array_merge($netUrl->querystring, $arrQueryString); 149 150 150 151 $session = SC_SessionFactory::getInstance();
Note: See TracChangeset
for help on using the changeset viewer.