#50806 [Opn->Asn]: $this can be assigned using variable casting

From: Date: Sun, 24 Jan 2010 21:54:45 +0000
Subject: #50806 [Opn->Asn]: $this can be assigned using variable casting
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-146898@lists.php.net to get a copy of this message
ID: 50806 Updated by: jani@php.net Reported By: kominbhai at gmail dot com -Status: Open +Status: Assigned Bug Type: Feature/Change Request Operating System: Windows Vista -PHP Version: 5.3.1 +PHP Version: 5.*, 6, 7, 8, 9.. Assigned To: dmitry Previous Comments: ------------------------------------------------------------------------ [2010-01-24 04:56:45] kalle@php.net There are several other ways to also re-assign $this, e.g.: class Test { public function __construct() { var_dump($this); /* Quirk comes in here by using the concation operator */ /* ${'this'} is not possible and results in an E_ERROR */ ${'t' . 'his'} = 'Hello'; var_dump($this); } } If any whether this should be fixed within the Engine, then Dmitry would know so I'm re-assigning it to him for him to decide. As for a documentation issue, I really don't belive we should document such quirks in the official documentation else people will rely on such buggy "features". ------------------------------------------------------------------------ [2010-01-20 15:48:54] kominbhai at gmail dot com Description: ------------ $this can be assigned using variable casting Reproduce code: --------------- <?php $a="this"; $$a="abc"; echo $this; //works when it should not be ?> Expected result: ---------------- Error: $this cannot be re-assigned Actual result: -------------- echoes abc ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=50806&edit=1

« previous php.bugs (#146898) next »