Nette 2.0b2 z 12.12.2011 & upgrade na PHP 5.3.9 – problém s anotacemi

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Ot@s
Backer | 476
+
0
-

První ukázka funguje (vrací string komentáře), druhá ne! Rozdíl jen v tom, že jsem do druhé přidal namespace. Můžete vyzkoušet na jiných verzích PHP 5.3.x? Díky!

<?php
/**
* A test class
*
* @param  foo bar
* @return baz
*/
class Test { }

$rc = new \ReflectionClass('Test');
var_dump($rc->getDocComment())
?>
<?php
/**
* A test class
*
* @param  foo bar
* @return baz
*/
namespace Model;

class Test { }

$rc = new \ReflectionClass('Model\Test');
var_dump($rc->getDocComment())
?>

Editoval Ot@s (12. 1. 2012 14:20)

Nox
Člen | 378
+
0
-
  1. Nesouvisí s Nette
  2. Zkus Model\\Test
Ot@s
Backer | 476
+
0
-

Nox napsal(a):

  1. Nesouvisí s Nette
  2. Zkus Model\\Test
  1. Souvisí – varuju ostatní, ať (zatím) neupgradují na 5.3.9.
  2. Samozřejmě nefunguje…
$rc = new \ReflectionClass('Model\\Test');

PS: Nemám jinou možnost testu hostingu, tak se obracím o pomoc k ostatním – to nemůžu?!

Editoval Ot@s (12. 1. 2012 14:24)

norbe
Backer | 405
+
0
-

Není to náhodou tím, že ten komentář máš umístěný k namespace místo k třídě?

Ot@s
Backer | 476
+
0
-

norbe napsal(a):

Není to náhodou tím, že ten komentář máš umístěný k namespace místo k třídě?

Je! V PHP 5.3.3 to přitom „nevadilo“. Díky za pomoc!

Aurielle
Člen | 1281
+
0
-

V tom případě byl v PHP 5.3.3 bug. A poslední příspěvek se necituje…

Ot@s
Backer | 476
+
0
-

@gmvasek – nechápu tvou poznámku. Vzhledm k tomu, jaká je výchozí výška příspěvku, nemá naprosto žádný význam…

Aurielle
Člen | 1281
+
0
-

Je to nepsané pravidlo fóra a moderátoři to svého času dost hlídali. Byla to jen poznámka na okraj.

22
Člen | 1478
+
0
-

Ot@s napsal(a):

  1. Souvisí – varuju ostatní, ať (zatím) neupgradují na 5.3.9.

PS: Nemám jinou možnost testu hostingu, tak se obracím o pomoc k ostatním – to nemůžu?!

Mám 5.3.9 už 24 hodin a všechno funguje… tímto tedy varuji všechny před kódem od uživatele Ot@s nebo jeho hostingem, protože chyba asi není v 5.3.9 verzi :-)

Editoval 22 (12. 1. 2012 23:42)

Nox
Člen | 378
+
0
-

No každopádně ty dva kódy co napsal jsou odlišné (prvně anotuje třídu, potom namespace – jak si všiml norbe), tak je jasné, že se budou chovat jinak

Ot@s
Backer | 476
+
0
-

Byl tam rozdíl ve verzích PHP, kde se u 5.3.3 uváděný komentář s anotací nad namespace vztahoval k třídě (po upgrade už ne). Pánové, já myslím, že to h.v.o nemusíme více rozmazávat. :-) Ještě jednou díky a tímto bych to uzavřel.