“Organizing Your PHP Project” Slides Available

The slides from my php|works talk are now available as a PDF file. I’m going to try to create an audio version after I get back from the conference.

Are you stuck with a legacy PHP application? Subscribe to "Modernizing Legacy Applications in PHP" for tips, tools, and techniques that can help you improve your codebase and your work life!

4 thoughts on ““Organizing Your PHP Project” Slides Available

  1. Hi Paul – thanks for the Seagull mentions, got the URL wrong though it’s http://seagullproject.org.

    Couldn’t figure out the T prefix in Prado until a Delphi programmer shed light on the matter the other day, apparently T is for Type which is typical in Delphi.

    Am curious why you stuck Seagull in the ‘partial namespace’ category, the Seagull core libs are 100% namespaced with SGL_ and have been for ages. If anything I find the Horde convention confusing which is

    horde/lib/[a bunch of libs]

    and then

    horde/lib/Horde/[more similar libs]

    ie ‘block’ and ‘text’ appear at both levels.

    Seagull has modules which are not namespaced but this is on purpose because modules != libs and there should be no reason to have, eg, 2 comment managers in different modules.

    Another comment on your Auth convention, in my experience around 90% of PHP devs don’t know what the difference is between authorisation and authentication so it’s quite handy to name these classes explicitly.

    Totally agree on your point that an intuitive and consistent file structure is essential in a framework project, hopefully soon the Cakes and Symfony’s will drop the annoying convention of MyClass.class.php, IMHO the filename is more than sufficient.

    Good luck with the talk!

  2. hi
    i could not locate organizing-php-projects.pdf. please let me know the exact url.
    regards
    antony
    chennai, india.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>