Na, ez a szempont még nem jutott eszembe. Mondjuk resource-okhoz tartozó változókat nem is túl sokszor debuggolok szerencsére...
Rájöttem, hogy még a var_dump() nagy előnye lehet, hogy kiírja a stringek, tömbök, stb. hosszát is, ez legalább informatív. Ezenkívül még egy nagy plusz a var_dump() mellett, hogy az Xdebug defaultból szépíti az ilyen módon kiíratott változókat.
Mondjuk ha valaki szépen akarja látni ezeket a változókat, használjon például Krumo-t: [link].
A print_r() mellett viszont eddig kb. semmi nem szólt.
(#11596) Coyot :
"de a var_export más formában adja vissza a vizsgált változókat mint a másik kettő"
És szerinted én korábban miről beszéltem?
Pont ezt mondtam, hogy a másik kettő nem használható fel kódrészletként, tehát IDE sem highlightolja, ha bemásolod a kimenetet, viszont a var_exportnak megvan ez az igen nagy előnye. Plusz szemre is könnyebb átlátni szerintem, mint pl. a print_r() kimenetét.
"alapműködésben teljesen más"
A kiíratás módjában vannak különbségek, a cél hasonló.
Vegyünk konkrét példát, kiíratom a $_GET változót, úgy, hogy mondjuk az alábbi címet írom be:
http://test.local/index.php?asd=tenisz%C3%BCt%C5%91&id=123&blabla=qweqwe&foo=bar&data[]=rtetz&data[]=ertwer&data[]=423
print_r() kimenete (előny: számomra ismeretlen):
var_dump() kimenete (előny: informatív adatok, pl. tömbök, stringek hossza; valamint a default Xdebug-támogatottság):
var_dump() engedélyezett Xdebuggal:
var_export() kimenete (előny: a kód egyből felhasználható kódként):
Sk8erPeter