Question

I am writing an web application powered by PHP, Smarty, JavaScript, CSS, MySQL.

There will be some classes, which will be used through out the application. There will be some scripts which will use those classes.

Any good article, tutorial, architecture on how to organize files for a web site?

P.S. It should contain how to organize all the files (PHP, JavaScript, CSS, template files.)

Was it helpful?

Solution

Just remember PHP libraries and template files should not be directly accessible over the web server.

You can make class names like My_Db_Table and load them with __autoload.

/project
- /config
- /html
- - /css
- - /images
- - /js
- - /subdirs for php files unless you use apache mod_rewrite or similar
- - index.php
- - otherfiles.php
- /lib
- - /My
- - - /Db
- - - - Table.php
- /templates
- /functions
- /scripts

OTHER TIPS

Here are two good articles on PHP projects using Smarty and how to setup the file structure for them:

http://codepoets.co.uk/php5_application_directory_structure_ruby_on_rails

http://www.edit-x.com/editx-support-articles.php?s=&c=21&d=48&e=&f=&g=&a=11122&w=2

A very basic folder layout:

root
 |
 |- htdocs       # apache documentroot (i.e. index.php etc.) here
 |   |
 |   |- styles   # css here
 |   |
 |   |- images
 |
 |- application  # classes etc. here
 |
 |- vendor
 |   |
 |   |- smarty   # smarty library files
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top