Thanks, Richard, I wasn't aware of that function. Another nice option. On Tue, Mar 2, 2010 at 6:18 AM, Richard Quadling <rquadling@xxxxxxxxxxxxxx>wrote: > On 1 March 2010 19:34, Adam Richardson <simpleshot@xxxxxxxxx> wrote: > > I use namespaces within my web framework because the framework takes a > more > > functional approach (no objects are created within the framework other > than > > from existing classes such as PDO or Exception, immutability is promoted, > > etc.), and in this context, the namespaces felt quite natural for > breaking > > up the various groupings of functions. > > > > My framework does require PHP 5.3, and, honestly that has caused some > pain > > in some situations to get that supported. > > > > However, using namespaces does offer some flexibility that naming > > conventions can't. If the objects in your framework make use of frequent > > static method calls, maybe it's worth it. For instance, if you've used > the > > naming convention, you might have to call a static method like below: > > > > App_Util_DB_Query::Insert(); > > > > Namespaces allow you to shorten subsequent calls, such as: > > > > use App\Util\DB\Query as Query; > > > > Query::Insert(); > > > > Just a quick couple thoughts on the decision. Both have their strengths > :) > > > > Adam > > > > On Mon, Mar 1, 2010 at 11:14 AM, Auke van Slooten <auke@xxxxxxx> wrote: > > > >> Hi everyone, > >> > >> I'm doing a small hobby project to better my understanding of php5, > >> specifically php5.3 and I'm wondering when a namespaced project is > better > >> and when it is better to simply use a prefix to all class names. > >> > >> I've been trying to get a feeling for what is considered the best > practice, > >> but most of the pages dealing with namespaces start with the assumption > that > >> you are building a complex application with lots of modules and say > things > >> like: > >> > >> Namespaces should be all lowercase and must follow the following > conention: > >> <vendor>\<package_name>\ > >> > >> (thats from the php.standards mailing list btw) > >> > >> In my case the project is a single module, single php file, with about 6 > >> classes. It is an OO wrapper for PHP's xmlrpc methods (client and > server) > >> and meant to be used in a number of different projects. > >> > >> Is it considered a good idea to use a namespace in such a case? And if > so, > >> what should that be? I've named the project 'ripcord', and used that as > a > >> namespace as well. I could probably name it 'muze.ripcord', but somehow > that > >> feels less 'open' to me. > >> > >> Thanks in advance for any thoughts, > >> Auke van Slooten > >> Muze (www.muze.nl) > >> > >> PS. The project is at http://code.google.com/p/ripcord/, the PHP5.3 > >> version is at > >> http://code.google.com/p/ripcord/source/browse/#svn/branches/php5.3 > >> > >> > >> -- > >> PHP General Mailing List (http://www.php.net/) > >> To unsubscribe, visit: http://www.php.net/unsub.php > >> > >> > > > > > > -- > > Nephtali: PHP web framework that functions beautifully > > http://nephtaliproject.com > > > > Something I came across which has been useful in removing the long > names (<php5.3 namespaces), is the use of class_alias(). > > My specific use is in DocBlocks for SOAP services. Using the Zend > AutoLoader, my classes are structured so that > Namespace_Package_Class_Exception is available in > \includes\Namespace\Package\Class\Exception.php > > But having those long names in the SOAP WSDL file were a bit > cumbersome. So by having a class_alias in the important class files > (just after the class definition), I could use the alias names in the > docblock and all is well. > > > > -- > ----- > Richard Quadling > "Standing on the shoulders of some very clever giants!" > EE : http://www.experts-exchange.com/M_248814.html > EE4Free : http://www.experts-exchange.com/becomeAnExpert.jsp > Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731 > ZOPA : http://uk.zopa.com/member/RQuadling > -- Nephtali: PHP web framework that functions beautifully http://nephtaliproject.com