Tuesday, November 20, 2012

Zend, Zend, What Have you Done Now?

To paraphrase the Sam Jaffe character from the Flintstones send-up of Ben Casey, (Ben Caserock?), "Zend, Zend, What have you done now, Zend?
Yet another installation that the designing company imagines is a snap to get done. I decided I wanted to play with the Zend framework, because I like to torture myself. I decided against the all inclusive Zend Server, as I didn't need any more PHP installations, and looked to add ZF2 to my WAMP server instead. I placed the framework directories inside WAMP and created another directory to be my Zend playground.
I then did the recommended Composer thingee to get the sample skeleton project installed, but the official instructions didn't exactly go according to plan. Instead of running `php composer.phar self-update`, followed by `php composer.phar install` in the DOS prompt window, I first ran `composer self-update` as per someone's suggestion, but not entirely per their suggestion.
The suggestion had added that I should remove the .PHAR from the file name. Instead, what I really did was run the composer.bat file instead of the PHAR file. I then had to copy the composer.json file to my root C directory. The sum total of the json file is:
{
    "require": {
        "monolog/monolog": "1.2.*"
    }
}
Just make it in notepad. Then I ran `composer install` from the C prompt and got the skeletons out of their closet. That was not the end, however. Some virtual hosting had to be done.
Made all my preferred playground directory localhost aliases in Windows hosts file, created a playgrounddirectory.com.conf file in WAMP's vhosts directory, added the requisite <Directory> and <VirtualHost 127.0.0.1> groups to Apache's httpd-vhosts.conf file.
But still, the WAMPstones characters personalities are mixed up. One more little detail still needed to be attended to.
Had to add to Apache's httpd.conf file, the line `SetEnv ZF2_PATH "c:/wamp/ZendFramework203/library"`, the location where I chose to store Zend.(Zend came by default as `ZendFramework-2.0.3`, but I'm prejudiced against hyphens and periods)
I could have just called it `library`, or `stupid`, or anything, I suppose. As long as the Zend subdirectory within library could be found. Zend Caserock has finally returned all the WAMPstones personalities back to their proper characters.