As of PHP 5.4.6 constant() pays no attention to any namespace aliases that might be defined in the file in which it's used. I.e. constant() always behaves as if it is called from the global namespace. This means that the following will not work:
<?php
class Foo {
const BAR = 42;
}
?>
<?php
namespace Baz;
use \Foo as F;
echo constant('F::BAR');
?>
However, calling constant('Foo::BAR') will work as expected.