변수가있는 User 클래스가 있습니다. private $ uPass;PHP OOP - var_dump를 사용하여 외부 클래스에서 액세스 할 수있는 private 변수?
나는 User의 인스턴스를 만들 때 인스턴스에 var_dump를 실행하여 모든 개인 변수를 나열한다는 사실을 알아 차 렸습니다. 이 기능을 끄는 방법이 있습니까?
class User
{
private $uId;
private $uName;
private $uPass;
private $uPowers;
$teamMembers[$count] = new User();
foreach ($teamMembers as $teamMember)
{
var_dump($teamMember);
}
그리고 출력이 바로 암호를 포함하여 모든 것을 보여줍니다 ... 는 당연히 그들은 암호화하고 있지만 여전히이 같은 액세스 할 수 싶지 않아!?
이 문제를 해결하는 올바른 방법은 무엇입니까?
var_dump()는 개인 변수에 액세스하는 것과 동일하지 않습니다. 아직 코드에 액세스 할 수 없습니다. 클래스, 디버깅 도구 및 리플렉션에만 적용됩니다. –
var_dump가 문제가되는 경우 [ReflectionClass] (http://stackoverflow.com/questions/11604946/can-i-get-the-value-of-a-private-property-with-reflection)도 확인하십시오 데이터베이스 도구에서 값을 숨길 수없는 것처럼 값을 숨길 수는 없습니다. 값을 PHP로 채우지 않고 DB에서만 테스트 할 수 있습니다. – Gectou4