Alexander Netkachev's Blog: Installing Propel object persistence layer for Web application
305705
In his latest entry, Alexander Netkachev explains how to install the Propel object persistence layer and it's needed packages into your PHP application.    Object persistence layer provides the developers with the API that allows them to operate with data of the application in object-oriented manner. The developers can use known OOP methods for searching for and restoring the objects from the database. Something like this you can find on the main page of the Propel project and in the Wikipedia article about ORM technology.   These enthusiastic words roused my interest in the technology and I promised myself I would spend some time on testing a software for generating object persistence classes. And I ready to try the Propel library, because it is used by the Symphony framework, which I plan to test in a couple of weeks.    He starts with a little background information about why he's chosen to go with Propel and the process he followed to get things up and running smoothly. He links to the software you'll need (Propel, Creole, and Phing) and gives the install structure and environment variables you'll need to set. Finally, he gives an example .bat file to help perform the install automatically, reducing the problems that could happen when done manually.
242013
Popular posts from PHPDeveloper.org for the past week:ProDevTips.com: Writing a CMS/Community with Smarty and the Zend Framework: Part 6Nessa's Blog: Using an .htaccess with PHP Compiled as CGIArnold Daniels' Blog: How I PHP: The Output Handler - ContinuedMartynas Jusevicius' Blog: PHP 5 features: Class autoloadingSean Coates' Blog: Actually Solving a Problem (believe it or not)The Northclick Blog: Message Queue Project: First working versionStefan Mischook's Blog: A Question about object properties in PHP ClassesJob Posting: G2 Technology Seeks PHP Developer (Memphis, TN)Rob Allen's Blog: Zend_View: Access the view from a view helperDavid Walsh's Blog: Using PHP Generic Objects To Organize Your Code
621839
"Rubinius is a project to watch", so says Charles Nutter in his post Rite, Rubinius, and Everything &mdash; I think he's right.  Evan is hard at work making things work better in rubinius.  He's now got continuations working (I think this makes him the first alternative implementation of Ruby to do so), and says he should have serializable continuations soon (see his post on it here).  W00t!
366947
Lukas Smith is sending a wakeup call to the internet providers and web hosters out there - get involved in the PHP community!   We do not seem to have any ISP's active inside the PHP community. This is kind of odd, considering that PHP seems to be driving the business of hosters quite a bit. Why have none of them decided that PHP is important enough for their business that its worthwhile to ensure that their interests are taken into account?   He makes the suggestion of passing along the suggestion to bosses/co-workers/anyone who'll listen about getting involved. Suggested places to start would be as a part of the testers group or even contributing to the migration guide.
759924
Chris Hartjes is taking on what he calls his "next foolish project" - a console for the CakePHP framework.   On the CakePHP mailing list, somebody familiar with Ruby on Rails' console functionality asked "why isn't there one of these in Cake?" [...] So I got to thinking about how to do this. On the surface, it seems the easiest way to do this is to write a PHP script that takes entries on the command line, run the input through an 'eval' statement. Sounds easy enough, and I could write that in a hurry. I think the trickiness comes in figuring out how to hook it into CakePHP so that you can access Models that already exist.   For those attending the Vancouver PHP Conference, attend his talk and you might get  amention of how far he's come with the idea. Otherwise, stay tuned to his blog for updates.
194190
Matthew O'Phinney has two new posts that talk about something object-oriented developers seem to shy away from - globals in their classes and how they can make things more difficult to make "embeddable applications" a reality.   In my previous entry, I ranted about the use of globals in popular PHP applications, and how they make embedding said applications difficult. I develop using object-oriented practices, and can honestly say I can't recall ever having slung a global variable around in my own code. Globals seem hackish to me, and as a result, trying to get applications that use them to behave correctly has been a challenge.   In the first part, he notes an interesting find about the $GLOBALS value and illustrates with a code example how he was able to get around it in his instance (wrapping a Serendipity instance in a Zend Framework app).   In part two, though, and uses another code example to show what kind of issues he was seeing with the $GLOBALS - a script that sets some globals in different instances and echoes the results back out.
676141
While attending Gunter Kniesel's "Aspect-Oriented Software Development" lecture yesterday it occured to me that it might be possible to (ab)use PHP 5's __autoload(), __call(), __get(), and __set() interceptors to facilitate Aspect-Oriented Programming with PHP.
360849
On the Zend Developer Zone today, there's this new tutorial that looks at making the move from PHP4's object-oriented programming up to the "more complete obejct model of PHP5" - specifically with the Decorator design pattern.   While working on a project I realized one particular solution was a pretty good way to demonstrate the decorator design pattern together with some of PHP5's features, including abstract classes, interfaces, type hinting, the final keyword and the visibility of properties and methods. This article is intended for those of you who, like myself, are moving from object-oriented programming, including some use of design patterns, in PHP4, to the more complete object model of PHP5.   He sets up a scenario about the development of an online pizza ordering system to show how to "decorate" a pizza with each of the toppings on a list (instead of having to list out every pizza in every possible topping combination). Of course, all of the code is included and explained so you understand exactly what's happening. Finally, there's a demonstration of its usage - a simple call that grabs the stock level/name/cost of each of the items in stock (pizza combinations).
614738
Matt Wade has posted a quick item to APress' Inside Open Source blog today mentioning an update to an item he'd previously mentioned - issues with the Zend_Cache module.   One of my complaints was the Zend_Cache did not accept lifetimes on a per object basis, but rather the lifetime was at an application level. I just received notice in my inbox that the issue has been fixed! The change is currently in svn, and should be in the 0.80 preview release. Thanks go to Fabien for the fix.   You can download this latest version of the Framework (0.7.0) from the Zend Framework website.
535174
Jan Lehnardt has been working up a REST controller for a PHP application he's been developing and has posted a minimalistic structure for one he's worked up.   One of the projects involves very little code and I do not want to use a full fledged framework there. Another one is using Code Igniter which does not handle REST by default (as far as I can tell). So I wrote a minimal REST application controller that easy to integrate and very flexible.   His example makes a base class that is extended by each of the controllers needing REST functionality. It includes methods for dispatching, error handling, responding and passing the call to the right handler.
562776
A different sort of abstraction layer project has been started up and has already seen a few releases - Forage. As mentioned on Rob Young's blog:    Recently I've been working on a search abstraction library for PHP called Forage. The idea is to bring to search what we've had for relational databases for quite a while, abstraction.    On Friday I put up a preview release with three backends; Solr, Xapian and Zend Search Lucene. At the moment it has the bare minimum of features but there will be more soon. In this post I'm going to talk a little about the motivation for the project and then walk through a short example.    He talks about the need for search abstraction (integration and resilience to change) before getting into an example of some code that grabs the data from an RSS feed, passes it in to the Xapian search engine and stores it before looking it over for thier search terms ("yahoo microsoft").   You can download the library if you'd like to try it out for yourself.
635884
Alchemi is a software framework that allows you to painlessly aggregate the computing power of networked machines into a virtual supercomputer (computational grid) and to develop applications to run on enterprise grids.      We are pleased to announce the release of version 1.0.6. The major changes since 1.0.5 are a LUA (Least Privileged User Account) operation for both Manager, Executor in normal and service mode and an option for executing user's GThreads in a secure sandbox (experimental)  Please note that this is a developer release intended for enthusiasts and early adopters as documentation is not up to date.     Go here for downloading the files in this release:     http://sourceforge.net/project/showfiles.php?group_id=66729&package_id=186776&release_id=456163
546713
In an effort to somewhat unify the authors of the wide range of PHP database abstraction layers out there in the community, Lukas Smith has proposed a "doctrine miling list" for the discussion of things "like best practices, new discoveries, challenges, etc".    Now I am hoping that all of you are reading this. I know quite a few of you pretty well already (John, Hans, Manuel etc.). [...] So please everybody come out of the woodwork, send me a mail or post a comment.   While I think its fine for end users to also join the list, the goal is not to create a list for end users to ask questions, but more for people who actively develop database abstraction layers. End users should better go to the respective mailing lists.    Ian P. Christian has already stepped up to the plate and is offering a mailing list that you, the database abstraction developer can subscribe to - mailto:phpdbabstraction+subscribe@lists.pengus.net. Be sure to check out the comments for more great discussion.
663615
AgileWiki explores new knowledge representation. The current effort is on implementing a copy-on-write OODBMS with support for fast deep copies, b-trees, large extensible hashes, simple lists, bush structures and calendars.   CowDb is a new kind of Object Store based on Copy-On-Write technology. It supports fast deep copies, b-trees and large extensible hashes.   http://agilewiki.wiki.sourceforge.net/CowDb
702834
Pierre-Alain Joye takes a look at building Cairo (a vector-based graphics library for PHP) on a Windows system.    While trying to get the cairo (and pimp) PHP binding ready to be released, I finally sit down and port Wez build cscript to cairo. It still needs some cleanup, a nice summary message but it works already. I tested it with Visual C++ Express Edition but it should work with other versions as well.   My next goal is to add the tests (nmake tests) and fix the nmake instal    He describes the process he went through to try to get things up and running, but is still having a few issues and has required a few tweaks to get it working. He also links to two resources: a ZIP of the development libraries and a ZIP ready to use package.
754812
Tobias Schlitt has pointed out a new article he's written up that acts as an introduction to the features of the new ORM component of the eZ Components application framework - the PersisteneObject.   For me the coolest feature of PersistentObject is, that the component does not require you're ORM enabled classes to inherit from a certain base to allow your objects to be stored in a database (made persistent).   This new object gives you a "wapper" of sorts to make any of the pre-existing objects in your application persistent. Check out the article for more.
647305
Popular posts from PHPDeveloper.org for the past week:Ian Selby's Blog: Uploading Large Files With PHPONLamp.com: Quick and Clean PHP FormsDotVoid.com: Reordering nested sets using PHP and JavascriptRob Allen's Blog: Zend Framework Book Coming SoonCommunity News: php|works Daily Summaries (Day 2)Community News: Sara Golemon & Christopher Jones - First Day Summaries of php|worksJob Posting: University of Wisconsin, Department of Medicine Seeks Web Developer (Madison, WI)Zend Developer Zone: PHP Abstract Podcast Episode 19: Glue Frameworks vs. Full Stack FrameworksStefan Mischook's Blog: Installing PHP and MySQL on the Mac with MAMPSecurityReason: Three Advisories for PHP 5.2.4 (dl, iconv_substr & setlocale)