Pisałam jakiś kod php po długim sint robi rubin i przypadkowo napisałem:Dlaczego to działa? (Php zapis dot)
[[email protected] test]# cat run.php
<?php
class MyTest {
public function run() {
var_dump(this.test);
}
}
$object = new MyTest();
$object->run();
[[email protected] test]# php run.php
string(8) "thistest"
[[email protected] test]#
Teraz powinno this.test zostały $ this-> test, ale kompilator był naprawdę szczęśliwy, że pozwolę temu biegać.
Czy ktoś wie jak (ten.test) został przekształcony w ciąg "thistest"?
Opracowano i wprowadzono na php 5.3.2 Amazon wystąpienia ami-e32273a6 (CentOS 5.4)
-Daniel
i ' . " konkatenuje w php –
Ahh, piękne niejawne konwersje w PHP! PHP nigdy nie przestaje mnie zadziwiać. Przysięgam! – CMircea
@iconiK Z odpowiednim raportowaniem błędów aktywny PHP powinien mieć dwa błędy a la "Niezdefiniowana stała' this', przyjmując ciąg 'this'. " Nie żeby to było naprawdę lepsze, uważam, po prostu jest to bardziej oczywiste. : o) – deceze