PHP 파일에 변수 배열을 선언하고 파일을 포함시킨 후 배열의 값을 변경했습니다. 그런 다음 배열 변수에 업데이트 된 값이 있으므로 3 번째 파일에서 액세스하면 새 배열 값을 얻게됩니다. 내가 어떻게 해? 온라인 퀴즈 페이지에서 필요합니다. 사용자가 데이터베이스에서 페이지를로드 할 때마다 임의의 문제를 가져 왔습니다. 제출 한 후, 결과를 표시하기 위해 submit.php 페이지 (제출 후 재 지정 된 페이지)에서 가져온 문제점의 ID 번호가 필요합니다. 문제점 페이지의 배열에 문제 ID를 저장했으며 submit.php 페이지에서 배열에 액세스 할 수 있기를 원했습니다.PHP에서 여러 파일로부터 파일에 선언 된 업데이트 된 변수에 접근하기
답변
배열에 따라 원하는 동작에 따라 다릅니다.
웹 응용 프로그램을 탐색하는 사람의 인스턴스와 관련된 배열 인 경우 각 사람이 자신이 원하는대로 자신의 변수를 가지고있는 경우에는 세션을 사용하여 설정하고 싶을 것입니다. $_SESSION
전역 변수. 이 같은 아마 뭔가 : 배열의 데이터가 응용 프로그램에 액세스하는 사람에 의해 세계적으로 액세스 할 수 있어야합니다 경우
//file1.php
<?php
session_name("applicationName"); //give your session a unique and static name, so that other apps on your server don't interfere
session_start(); //must always start the session before working with session variables
$_SESSION['data'] = array(1, 3, 6, 9); //set your array into the session global
include("file2.php");
?>
//file2.php
<?php
$_SESSION['data'][0]++; //for demonstration purposes, increment the first key of the array
?>
//file3.php
<?php
session_name("applicationName"); //same session name
session_start();
print_r($_SESSION['data']); //shows the contents of your array,
//which will now contain 2, 3, 6, 9
?>
그러나, 당신이 당신의 배열 정보를 저장하는 데이터베이스를 사용하거나 APC로 볼 수도 있습니다. 플랫 파일을 단순히 사용하는 것의 위험은 한 사용자가 쓰기 작업을 유발할 수 있고 다른 사용자는 읽기 작업을 유발할 수 있으므로 예측할 수없는 결과가 발생할 수 있습니다. MySQL과 같은 데이터베이스와 APC와 같은 캐싱 확장 기능은 대개 선착순으로 작동하며이 문제로 어려움을 겪지 않습니다. 데이터가 중요한 경우
, 데이터가 서버를 다시 시작 살아남을 것 같은 데이터베이스를 사용 :
//store the variable to a row in the database
$query = $dbconn->query("INSERT INTO tblVariables(variableName, variableValue)
VALUES ('someVariable', '".$dbconn->real_escape_string(serialize($yourArray))."';");
//retrieve the variable from that row
$query = $dbconn->query("SELECT variableValue FROM tblVariables WHERE variableName = 'someVariable';");
if($query) {
while($row = $query->fetch_assoc())
$yourArray = deserialize($row['variableValue']);
}
serialize()
/deserialize()
이 하나의 저장 가능한 문자열로 배열이나 객체를 통합하는 편리한 방법입니다. 데이터베이스 열이 충분한 크기의 VARCHAR
이거나 TEXT
인지 확인하십시오.
데이터 자연 임시 경우, APC는 트릭을 할 수는 서버에서 사용할 수 제공 :
//store the array in APC
apc_store('variableName', $yourArray);
//retrieve the array from APC
$yourArray = apc_fetch('variableName');
APC는 serialize()
를 사용할 필요가 없습니다.
데이터베이스 또는 APC 애플리케이션의 위치는 무엇인지 알아야하지만 세션 예제는 질문에 따라 코드를 구성하는 방법을 설명하기에 충분해야합니다.
고마워. 그것은 일했다 !!! – sanjeev1779
- 1. 부모의 보호 된 변수에 접근하기
- 2. 다른 파일에 선언 된 변수에 액세스하기
- 3. PHP에서/var/log 파일에 접근하기
- 4. 범위 밖에서 로컬로 선언 된 구조체에 접근하기
- 5. 선언 된 변수에 KILL 사용
- 6. 필터에 선언 된 변수에 액세스하려고합니다.
- 7. 컨트롤러에서 선언 된 변수에 액세스하기
- 8. PHP에서 선언 된 클래스의 이름
- 9. Android/Java - 다른 파일에 선언 된 변수에 액세스하는 방법?
- 10. 전역 변수에 접근하기
- 11. PHP에서 여러 카테고리 및 선택 항목에 접근하기
- 12. 뷰에서 요소에서 선언 된 변수에 액세스하는 방법
- 13. initComponent 내부에서 선언 된 변수에 액세스하기
- 14. 장고에서 모델 변수에 접근하기
- 15. PHP에서 배열 덩어리에 접근하기
- 16. 외부 클래스에서 전역 변수에 접근하기
- 17. PHP에서 변수에 에코 된 문자열 저장하기
- 18. 하스켈 함수에서 명명 된 필드에 접근하기
- 19. MongoDB에서 중첩 된 객체에 접근하기
- 20. 다른 드라이브의 파일에 접근하기
- 21. 안드로이드에서 리소스 파일에 접근하기
- 22. 자바에서 원격으로 파일에 접근하기
- 23. angularjs가 포함 된 파일에 정의 된 변수에 액세스하는 방법은 무엇입니까?
- 24. PHP에서 여러 업데이트 문 실행
- 25. 루아에서 컴파일 된 파일로부터 함수를 가져 오기
- 26. jQuery로 업데이트 된 PHP $ _SESSION 변수에 액세스
- 27. PHP에서 가장 최근에 업데이트 된 파일 얻기
- 28. 키즈 멧에서 언리얼 스크립트 변수에 접근하기 - UDK
- 29. 클래스가 자동으로 선언 된 메서드가 선언 되었습니까?
- 30. 변수에 변수를 선언 하시겠습니까?
변수를 전역 적으로 저장하고자하는 것 같습니다. 파일에 쓰거나 데이터베이스에 저장하여 그렇게 할 수 있습니다. 파일을 포함 할 때마다 내용이 기본적으로 실행되므로 변수 파일에서 변수가 초기화되면 영구적 인 내용이됩니다. – Max