Shadowing fields with a local variable is a bad practice that reduces code readability: it makes it confusing to know whether the field or the variable is being used.
class Foo {
public $myField;
public function doSomething() {
$myField = 0;
...
}
}