2
PHP에서 echo를 사용할 때 변수 이름을 따옴표로 묶은 문자열에 넣을 수는 있지만 세션 변수로는이를 수행 할 수 없다는 것을 알고 있습니다. 왜 그 이유를 설명 할 수 있습니까? 여기 PHP에서 세션 변수를 에코하기
는 주석은 "잘못된"PHP와 코드입니다 :<?php
session_start();
$test = 100;
$_SESSION['test'] = 200;
?>
<html>
<head>
<title>Test</title>
</head>
<body>
<p><?php echo($test."<br />");?></p>
<p><?php echo("$test"."<br />");?></p>
<p><?php echo($_SESSION['test']."<br />");?></p>
<p><?php //echo("$_SESSION['test']"."<br />");?></p>
</body>
</html>
그리고 출력은 다음과 같습니다
100
100
200
을하지만 잘못된 코드 행의 주석을 해제하는 경우 :
를<p><?php echo("$_SESSION['test']"."<br />");?></p>
출력이없고 다음 오류가 발생합니다.
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in - on line 14
그래서 올바르게 (그냥 따옴표 밖에있는 세션 변수를 유지하는 방법을 알기 때문에) 즐겁게 할 수 있지만 세션 변수가 작동하지 않는 이유를 알고 싶습니다.
감사합니다.
<p><?php echo("{$_SESSION['test']}"."<br />");?></p>
이 특별히 $_SESSION
에 문제가 있지만 인용 키에 액세스 어떤 배열이되지 않습니다 : 당신이 {}
에서 복잡한 변수 (배열 또는 객체의 속성)로 묶어야합니다 이중 인용 된 문자열 내부
에서 당신이 이이
{}
의 포장과 숫자 인덱스 배열 값을 포함 할 수 있음에 유의 . – hakre감사합니다 ... 나는 그 페이지를 읽었지만 당신의 코멘트 후에 다시 읽었고 그 페이지에서 다른 사람들이 설명해야했던 링크가 있다는 것을 깨달았습니다. 사소한 질문을해서 죄송합니다. :-) – doxguy