에 GET 변수를 추가 :PHP 내가이처럼 보이는 링크가있는 페이지가 링크
<a href="http://mysite.com/page.php">...</a>
나는 또한 변수 GET 할 수 있습니다를 LANG = 현재 URL에 갖추고 있습니다. 수동으로 추가하거나 각 링크에 변수를 추가하지 않고 GET 변수 lang = en을 페이지의 모든 링크에 추가하려면 어떻게합니까? 감사.
에 GET 변수를 추가 :PHP 내가이처럼 보이는 링크가있는 페이지가 링크
<a href="http://mysite.com/page.php">...</a>
나는 또한 변수 GET 할 수 있습니다를 LANG = 현재 URL에 갖추고 있습니다. 수동으로 추가하거나 각 링크에 변수를 추가하지 않고 GET 변수 lang = en을 페이지의 모든 링크에 추가하려면 어떻게합니까? 감사.
으로 검색 (config.php를 가정) 기본적인에 $_ENV['lang'] = 'en'
설정 모든 페이지에서 초기화했습니다.
출력 버퍼링이나 Apache 필터를 사용하여 출력을 구문 분석하여 lang 쿼리 문자열 매개 변수를 모든 링크에 자동으로 추가 할 수 있지만 이는 그리 효율적이지 않습니다.
정말로 각 링크에 수동으로 추가하고 싶지 않으면 세션 변수에 저장하는 것이 좋습니다. 그런 다음 페이지의 나머지 부분에서 $_SESSION['lang']
대신 $_GET['lang']
를 사용해야합니다
<?php
define('DEFAULT_LANG', 'en_GB');
session_start();
// check if a new lang has been specified.
if (isset($_GET['lang'])) {
// yes, so use the requested lang
$_SESSION['lang'] = $_GET['lang'];
// otherwise, check if a lang was previously set
} else if (! isset($_SESSION['lang'])) {
// no, so use default lang:
$_SESSION['lang'] = DEFAULT_LANG;
}
?>
: 각 페이지의 시작에서
당신이 뭔가를 가질 수있다 (아마도 일반에 스크립트를 포함한다). 또한 요청한 lang이 유효하고 사용 가능한지 확인하기 위해 일종의 유효성 검사를 추가 할 수 있습니다.변경하기} isset –
아니오 - 첫 번째'isset ($ _ SESSION [ 'lang']) '$ _GET [ 'lang']', 두 번째'$ _SESSION [ 'lang']'을 검사합니다. 의견을 읽으십시오. – megaflop
Oups 내가 tought $ _GET, 미안 해요 : S –
"페이지가 있습니다"를 정의하십시오. 그것은 정적 인 페이지처럼 들립니다. – Jon
URL을 생성하는 함수/메소드를 작성해야합니다. – kapa