79 lines
4.1 KiB
Markdown
79 lines
4.1 KiB
Markdown
______ _____ _____ _ __ _ _____ _____
|
|
| ___ \_ _/ __ \| | / /| | | ___/ ___|
|
|
| |_/ / | | | / \/| |/ / | | | |__ \ `--.
|
|
| __/ | | | | | \ | | | __| `--. \
|
|
| | _| |_| \__/\| |\ \| |____| |___/\__/ /
|
|
\_| \___/ \____/\_| \_/\_____/\____/\____/
|
|
|
|
PHP Interface Collection of Killer Libraries to Enhance Stuff
|
|
===========================================================================
|
|
|
|
What is PICKLES?
|
|
----------------
|
|
|
|
The whole point behind PHP with PICKLES was for me (Josh Sherman) to take
|
|
a decade of PHP experience and a dozen or so of my own websites (all
|
|
running on different but similar custom systems of my own design) and build
|
|
a new framework / rapid development system that would be flexible enough to
|
|
run all of my sites off of a single shared code base. PICKLES runs in such a
|
|
way that the core files are completely separate from the site code it's
|
|
serving. So much so, that the core files should never really need to be
|
|
accessed after installation (unless you want to void your warranty and/or
|
|
make a global change to all of your sites), and each site you have running
|
|
will be nicely packaged in a directory all it's own. This keeps your sites
|
|
simple and tidy with no duplicated code for each site! In a site's
|
|
directory, models and modules (page logic) and templates are kept separate
|
|
from each other and everything is ran through a single entry point
|
|
controller.
|
|
|
|
Okay, but why?
|
|
--------------
|
|
|
|
Now I know you're wondering, "why didn't you just use one of the
|
|
preexisting and already established PHP frameworks that are out there?" I
|
|
do have a handful of reasons for that, but those are personal gripes based
|
|
on a limited number of experiences and I won't be going into detail
|
|
about them. The main reason for developing my own framework is that I am,
|
|
and also have been, a very do it yourself type when it comes to coding, and
|
|
typically very proud of my coding accomplishments. Also, because all of the
|
|
sites I had previously written shared a lot of the same concepts and in
|
|
some cases, the same bits of code, it made a heck of a lot more sense for
|
|
me to develop a new system based around some of the better concepts from
|
|
previous outings than to rebuild my sites inside of another framework.
|
|
|
|
Get the facts!
|
|
--------------
|
|
|
|
* PICKLES will only run on PHP 5.0.0 or greater. There are no plans to
|
|
ever support PHP 4.x.y (or below) as those versions have reached end of
|
|
life, so please don't ask.
|
|
|
|
* PICKLES is not Model-View-Controller (MVC). It was developed around
|
|
concepts (as well as some naming conventions) of the MVC design pattern
|
|
but does not entirely conform to my own understanding of MVC. I'm from
|
|
the school of thought that there's not a single hammer for every nail,
|
|
so there's no point in forcing PICKLES into the MVC box for the sake of
|
|
it. PICKLES strives to provide a modular system for developing websites
|
|
while keeping the display elements separated from any database calls and
|
|
other logic. That isn't necessarily a bad thing, it just means that
|
|
PICKLES isn't all that trendy because it lacks a silly buzzword that's a
|
|
bit overused at this point.
|
|
|
|
* PICKLES supports rendering Smarty template pages, returning JSON data
|
|
and RSS feeds (currently only supports version 2.0) and is fully capable
|
|
of running from the command line modes.
|
|
|
|
* PICKLES is coded fairly close to the PEAR coding standards and is fully
|
|
documented in DocBlock notation.
|
|
|
|
* Included with PICKLES are shared CSS files (foundation classes and one to
|
|
do a full CSS reset) and shared JavaScript files with includes jQuery
|
|
(and some plug-ins / add-ons) and a core JavaScript file which includes
|
|
automatic AJAXing of forms and some other niceties.
|
|
|
|
* Writing error free code is very important to me, so any PHP development I
|
|
do is made to be E_STRICT compatible. This means that not only is PICKLES
|
|
code free of any errors, it is free of warnings as well.
|
|
|
|
* Depending on your server, any number of sites can be ran off of a single
|
|
PICKLES install!
|