News Feed
Jobs Feed
Sections

Recent Jobs

News Archive
feed this:

Dave Marshall's Blog:
Landing a PHP job Part 1 Technical Knowledge and Skills
September 09, 2008 @ 11:16:30

Dave Marshall, a developer from Hull, England, has posted a few recommendations he thinks could help you land that next PHP job.

After reading this thread, I thought I'd spend some time writing about what I feel are some measures you can take to landing a job in PHP. This first part is going to concentrate on the kind of technical matters I think any PHP developer should at least have knowledge of, if not some kind of experience.

He suggests: as much programming experience as possible, experience with the full development lifecycle, knowing how to work with external libraries and frameworks, being able to adapt to development tools, knowing web application security, and some work with web services and a touch of system administration. He's not saying that you have to have all of these - just that the more you know, the better off you could be.

0 comments voice your opinion now!
php technical knowledge skill programming security webservice tool library framework



Mike Naberezny's Blog:
My First php|architect Article (Zend Framework)
May 03, 2008 @ 07:06:06

If you just can't get enough information on the Zend Framework and are looking for a good overview of where it's come from and where it's going, you should check out the latest issue of php|architect magazine with the cover article from Mike Naberezny.

From his blog:

In the article, I begin by introducing Zend's motivations for creating a framework and how it relates to their PHP Collaboration Project. More information on these topics can be found on the Zend Framework website. I then dive into a tutorial where I take a business scenario and show how the components included in the Zend Framework can be put to work.

The article demonstrates a workflow where invoice data is retrieved from a web service, an invoice in PDF format is then built from that data, and finally the resultant file is emailed to a customer. The components Zend_XmlRpc_Client, Zend_Pdf, Zend_Mail, and Zend_Search_Lucene are explored along the way.

You can purchase both a print and electronic (PDF) copy directly from the php|architect site - no need to subscribe and a single issue only costs $3.50 USD.

0 comments voice your opinion now!
php zend framework php|architect article cover introduction php zend framework php|architect article cover introduction


Mike Naberezny's Blog:
Request/Response or Bust
April 27, 2008 @ 06:47:16

In a response to these comments made by Paul Jones concerning the Prado framework, Mike Naberezny shares his thoughts on the framework, the "PHP way", and how the majority of site functionality out there can really be divided up pretty simply.

RADO is getting some new attention because it was completely revamped earlier this month. It's certainly matured considerably since the contest and is the most well-known component framework for PHP. However, in all that time since PRADO was first introduced, the idea of a component framework hasn't been adopted by the majority of PHP developers. Why is that?

Although PRADO is a nice piece of software, Paul surmises that a component model as used by Microsoft .NET (Visual Web Developer now free!) and its close cousin PRADO is not the "PHP way" or "PHP spirit". For the most part, I agree with this. Although, I don't think it's necessarily a PHP-specific issue. I think it speaks to a larger architectural decision - how far to abstract out the HTTP request/response paradigm.

He summarizes the functionality in three different methods of handling: "page/file based", "action based", and "component based". He also notes that the interesting fact is that the "page/file based" method seems to be so dominant in the PHP world, only emphasizing the fact that PHP is more of a "get it done" language than anything.

0 comments voice your opinion now!
php request response bust prado .net asp architectures php request response bust prado .net asp architectures


Make Me Pulse Blog:
PHP6, Unicode and TextIterator features
March 14, 2008 @ 09:32:34

On the Make Me Pulse blog, there's a look at PHP6's support of Unicode in the SPL (Standard PHP Library) TextIterator handler.

I've just install the last version of PHP6 dev and I've decided to test the famous new feature, the PHP Unicode Support. I will not explain new things about PHP6 or Unicode or TextIterator, it's just my discoveries test on this features.

He steps through the process he followed - enabling Unicode support, testing various output methods (including just an echo and using the TextIterator) as well as some of the manipulation methods (next/first/current) that can be used to get certain characters out of a string.

0 comments voice your opinion now!
php6 unicode textiterator spl standard php library enable


Mike Naberezny's Blog:
Symfony Templates and Ruby's ERb
February 20, 2008 @ 07:12:36

In his latest blog entry, Mike Naberezny takes a look at the Symfony framework and shares some of his opinions on it.

One thing that I think Symfony gets right is that it appears to use partitioned PHP code for its templates, in the spirit of Paul's Savant system.

I noticed in the Symfony demo that there is no separation of scope between variables passed to the template from the controller and local variables in the template. I'd like to see them scoped properly ("$this->products") but I can certainly understand why they did it this way. Using "$this->" in the template everywhere quickly gets messy.

He mentions a few other items he saw as well, including a way to correct the above mentioned problem (two ways - one more single-instance, the other more global).

0 comments voice your opinion now!
php symfony template ruby ERb scope short_open_tags php symfony template ruby ERb scope short_open_tags


WebMonkey:
A Truly del.icio.us API
February 15, 2008 @ 13:04:10

On the WebMonkey site today, there's a new tutorial that looks at one of the most "pervasive" sites to come along in a long time, del.icio.us and how to interact with it's API via PHP.

Who's that with the catchy URL that's getting all the clicks?

Why, it's del.icio.us! No matter where you are on the "Web 2.0" lash or backlash, the pervasive influence of this little bookmark aggregator can't be denied.

The site offers a myriad ways of accessing its database, from HTML and RSS feeds, to JSON data, to browser integration of various types. Let's take a look at the public API, which offers flexible and easy access to del.icio.us.

In his example, he creates a script that, given the contents of an email message, filters out the URL, breaks it into its parts and sends it off to the del.icio.us API to be bookmarked under his account.

0 comments voice your opinion now!
php del.icio.us API interface email bookmark php del.icio.us API interface email bookmark


Mike Naberezny's Blog:
__get() - an alternative to __autoload()
January 09, 2008 @ 06:47:54

Mike Naberezny has posted this new item on his blog today with a look at why __get() is a perfectly good alternative to __autoload() in a class structure.

__autoload() is a magic function introduced in PHP 5 that provides a mechanism for on-demand loading of classes. After its inclusion in PHP, many argued that using such a feature is too magical or not a good design practice. Putting the religious debates over the appropriateness of __autoload() aside, its implementation does have one significant drawback: it is a function declared in the global scope. Once a function is declared, it cannot be redeclared. This means __autoload() can't be used effectively in shared libraries, since any other code could have already declared it.

Similar lazy-load functionality can be achieved on the class level by using __get().

He gives a short code example where the __get() call mimics the functionality of __autoload(), but the resulting object created is public, not global...

0 comments voice your opinion now!
php __get __autoload alternative global versus public php __get __autoload alternative global versus public


Skaldrom Sarg's Blog:
PHP-UWA Widget Library
November 26, 2007 @ 15:26:08

Skaldrom Sarg pointed us towards a new project he's been working on - an interface for PHP that allows it to use the UWA-Widgets from the NetVibes Universal Widget API system.

The PHP-UWA library allows a facilitated use of UWA-Widgets with PHP. It gives you access to the preferences and some convenience-functions. In theory, it should work with every UWA-compliant widget (even the broken ones which use html in the JS-Parts or the body). Mini-Apis do sometimes work too. An example is included.

You can see an example in this screenshot, try out a demo or just download the library and get testing.

0 comments voice your opinion now!
php uwa widget library netvibes universal api php uwa widget library netvibes universal api


Alex Netkachov's Blog:
Microsoft's SQL Server 2005 driver for PHP
October 18, 2007 @ 17:21:58

Alex Netkachov has posted some of his own thoughts about Microsoft's recent SQL server 205 driver for PHP:

I can add that a few years ago I had bad experience with MS SQL PHP extension. It was just impossible to use it in production environment. These days MS understand that PHP is a very popular programming language and step forward to the community

He also includes a list of some of the things that the driver includes/makes possible such as the fact that it's not a PDO or OOP driver, that there's no source posted for it and that it does support data streams.

0 comments voice your opinion now!
microsoft sqlserver driver php release comments microsoft sqlserver driver php release comments


Jeff Moore's Blog:
Keywords and Language Simplicity
October 12, 2007 @ 11:55:00

Jeff Moore has posted and shared an interesting graph showing something I'd never thought about comparing one language versus another on - the number of keywords it uses.

Well, I like programming language comparisons, so how could I resist this chart (via) promoting the simplicity of the io language by pointing out how few keywords it has. The interesting thing about this is that Java and PHP are tied on this measure of simplicity with 53 keywords.

Though not too meaningful, it is interesting to see how the different languages stack up in the number of reserved words you can't use for anything else. So, does that mean that Perl is the list limiting?

0 comments voice your opinion now!
keyword language simplicity graph perl php javascript ruby keyword language simplicity graph perl php javascript ruby


Zend Developer Zone:
Sometimes It's Not the Post, It's the Conversation.
August 14, 2006 @ 07:32:17

On the Zend Developer Zone today, Cal Evans looks back some more at his experiences at this year's OSCON and mentions his personal favorite session attended while there - the PHP Lightning talks.

The absolute best session I attended at OSCON 2006 was the "PHP Lightening Talks". Some of the presentations were interesting, others were hilarious. Theo Schlossnagle's Why PHP Sucks was both. Theo is a facilitating to sit and listen to, as you'll soon see when I post my interview with him. He's also quite funny when he wants to be. His presentation was interesting. It was part tongue-in-cheek and part dead serious but Theo left it to you to decide which was which.

He also points out another post about the talk from Chris Shiflett where a rather large discussion started about the contents of Theo's slides. And Cal hits the nail on the head:

The talk was good, don't get me wrong, but the conversation it inspired is much more interesting.
0 comments voice your opinion now!
post lightning talk oscon2006 conversation why php sucks post lightning talk oscon2006 conversation why php sucks


SitePoint PHP Blog:
Hot PHP UTF-8 tips
August 10, 2006 @ 14:50:03

Following up on some of his previous posts to the SitePoint PHP Blog, Harry Fuecks has posted this quick guide with some "hot UTF-8 tips" to share with the community.

As a result of all the noise about UTF-8, got an email from Marek Gayer with some very smart tips on handling UTF-8. What follows is a discussion illustrating what happens when you get obsessed with performance and optimizations (be warned - may be boring, depending on your perspective).

He talks mainly about using the native PHP functionality to avoid the mbstring issues that could arise by restricting locale behavior and using a fast case conversion function to handle strings correctly. The other tip involves delivery methods to those not able to recieve UTF-8 formatted content - checking their character set and responding accordingly.

0 comments voice your opinion now!
utf8 tips mbstring native php locale behavior case conversion character set utf8 tips mbstring native php locale behavior case conversion character set


Zend Developer Zone:
Zend Conference Case Studies Wanted!
July 07, 2006 @ 18:30:51

The Zend Developer Zone today is asking for more real life case studies for the Zend Conference 2006, which will be happening on between October 29th and November 2nd in San Jose.

Do you have a great customer case study to share with the community? We've had a terrific response to the Call for Papers for the Zend/PHP Conference but we'd really like to include more real-life customer case studies.

You know you want to submit something, go on, help Zend make the conference as good as last years!

0 comments voice your opinion now!
Zend PHP Case-Studies Zend PHP Case-Studies


Chris Shiflett's Blog:
OWASP PHP Top 5
July 07, 2006 @ 18:18:32

Chris points out today that the OWASP (the Open Web Application Security Project) is now publishing a PHP Top 5 list, detailing the top 5 PHP security concerns.

The PHP Top 5 is based upon attack frequency in 2005 as reported to Bugtraq. This information is a valuable insight into the most devastating attacks against the world's most popular web application framework.

The list is spot on, and Chris goes on to highlight some new PHP 6 security features and also his recommendation to use PDO to sotp SQL injection.

0 comments voice your opinion now!
PHP Security PDO OWASP PHP Security PDO OWASP


Elizabeth Naramore's Blog:
PHP Appalachia KOA Reservations
July 06, 2006 @ 11:26:10

Elizabeth points out today that they have managed to extend the discounted reservation period for the PHP Appalachia Campsite.

Just to let all the slackers out there know - we've been able to work out an extension on the campsite reservations with the Cherokee/Great Smokies KOA until August 1. So you have a little more time to make sure you get the discounted rate when reserving your site or cabin.

PHP Appalachia is going to be the second PHP Un-Conference, and I wish I could make it, it promises to be a lot of fun, so, make your reservation now!

0 comments voice your opinion now!
PHP Appalachia Un-Conference PHP Appalachia Un-Conference


Ivo Jansch's Blog:
Building proxies, decorators and delegates in PHP5
July 03, 2006 @ 19:54:13

Ivo Jansch today gives an excellent look on proxies, decorators and delegates; three popular desigh patterns.

In PHP5, you can define methods in an object for intercepting calls to methods of an object and for intercepting access to object member variables. These methods (__get, __set and __call) enable the implementation of very generic proxies, decorators and delegators.

This is a great introduction to these three patterns and how to implement them in PHP

0 comments voice your opinion now!
PHP design patterns proxies decorators delegates PHP design patterns proxies decorators delegates


php|architect:
ProPHP Podcast Interview with Mike Potter
July 02, 2006 @ 22:13:16

The Pro::PHP Podcast recently released it latest show, an interview with Adobes PHP+Flash/Flex evangelist, Mike Potter.

Mike has been at the forefront of the charge to educate PHP developers in the ways in which PHP can be combined with Flash and Flex technologies for extremely powerful, rich web applications. He has written for PHP|Architect and Zend's Devzone, and now seeks to get his message out to the entire community in this interview with Pro::PHP.

Grab it Now

0 comments voice your opinion now!
pro-php podcast Adobe PHP Flex Flash pro-php podcast Adobe PHP Flex Flash


Beanizer.org:
Exposing OpenJMS to PHP
June 23, 2006 @ 07:07:18

There comes a time in a developers life (well, okay, some of them) when they'll need to get one machine to talk to another in a quick and easy way. There's lots of options for this, but in this new tutorial, they'll focus on one - a combination of OpenJMS, XFire, and PHP.

recently got involved in a project where reliable communication between etherogenous platforms was required. Having already worked with JMS, I had to find a way to expose its services to the frontend(a PHP base web application). Some time before I had come across XFire, and had been looking for a chance to work on it.

This was that chance. I know SOAP can sometimes be cumbersome, but XFire really makes its use easy, and PHP well supports it( we'll use the nusoap library). In this article I'll make an introduction on how to easily merge together OpenJMS,XFire and PHP to get a generic, immediately usable messaging system. If someone will be interested in it, further articles will follow on this topic.

He introduces the technology, explaining what they are and the role they'll play. From there, it's straight into the code - first looking at the "functionalities wrapper" on the OpenJMS site, then how to expose this OpenJMS services with XFire (implementing a SOAP interface). Finally, the last piece of the puzzle - the PHP - comes into play with a simple set of calls surrounding the NuSOAP library to grab the data.

0 comments voice your opinion now!
exposing openjms soap php xfire connect tutorial exposing openjms soap php xfire connect tutorial


Tobias Schlitt's Blog:
PHP at FrOSCon program available!
June 16, 2006 @ 06:00:13

Tobias Schlitt posts today about the release of the program of the PHP track for this year's Free and Open Source Conference.

We finally managed to get the program online for the professional PHP track at the Free and Open Source Conference 2006, which takes place on the next weekend (June 24th and 25th) in Bonn, Germany. We will have 6 PHP related talks on Saturday, held by professional PHP developers, and a hackaton event on Sunday. Everyone is invited to join us and have a good time.

He lists the selected talks as well, including "Using Geeklog as a Web Application Framework", "SVG and AJAX", and "XMLReader/Writer".

0 comments voice your opinion now!
froscon2006 php track talks bonn germany professional froscon2006 php track talks bonn germany professional


Site News:
A PHPDeveloper.org Rebirth
June 14, 2006 @ 07:38:27

Unless you're one of our syndicated visitors, them I'm sure you've noticed a pretty big change around here. We've gone through a pretty major overhaul here at PHPDeveloper.org, and not just in our look.

When Zend posted their first preview release of the Zend Framework, we had to admit that we were hooked. As has been mentioned several times by many people all over the PHP (and programming) community, working on a project is the best way to learn a new method/software. Our project was the redevelopment of this site.

So yes, PHPDeveloper.org is now up and running on the latest version of the Zend Framework (Preview Release 0.1.3 as of the writing of this post) including some new functionality:

  • You'll notice tagging has been implemented - rather than trying to have predefined categories to fit posts into, we've opted to go with tagging to make the site more flexible and easier to pull only the data you want.
  • Along with this, you can "feed" just about any page on the site now, so if you're only interested in tutorials on a certain subject, add tags to the URL and the "feed this" link will reflect it
  • We've also "gone back to our roots" and are focusing on what we do best around here - provide the latest PHP news to the community. The only think we've really lost in the process were the tutorials we had posted from before. But, if that's what you're looking for, I am more than happy to send them along!

Of course, with new features and new functionality comes some growing pains, so bear with us over these next few days as we work through a few of the issues that pop up. If you come across any or just want to drop me a line to let us know what you think of the new site, feel free to send it along to enygma@phpdeveloper.org. Thanks to everyone out there for their continued support of the site!

20 comments voice your opinion now!
php site zend framework rework features php site zend framework rework features


The PHP Blog:
Writing a Pastebin in PHP
June 14, 2006 @ 06:52:40

From The PHP Blog today, there's this tutorial covering the creation of a "pastebin" style website of your very own. Pastebins are a simple collaboration tool allowing the posting of textual data (most commonly code) to a public place anonymously.

This post will show you step by step, how to create your own personal pastebin. If you don't know already, a pastebin is a website that lets people share text. These kinds of sites are useful when collaborating with project members who are in different locations, because it lets you quickly share pasted data with all members, instead of emailing the text back and forth. Some popular pastebins are pastebin.com, and pastebin.ca.

They develop the backend first, creating a simple MySQL database to hold the information. From there, it's just a bit of PHP away from allowing users to post their information. It's a very basic kind of interface (no feedback capabilities or anything), but with a little tweaking, it could definitely do more.

0 comments voice your opinion now!
php pastebin tutorial mysql post anonymously php pastebin tutorial mysql post anonymously


Zend Developer Zone:
Zend gets the Red Herring Nod
June 14, 2006 @ 06:08:34

The Zend Developer Zone has a quick note about its parent company, Zend, becoming a finalist in the inaugural Israeli Start-up Contest.

The even is sponsored by the Israel Venture Association and includes other finalists like: Amimon, Discretix, Deep Breeze, Mazor Surgical Technologies, and Itemfield.

For more information, you can check out this month's edition (on stands June 19th) of Red Herring.

0 comments voice your opinion now!
php zend startup company israeli finalist php zend startup company israeli finalist


PHPBuilder.com:
Bambalam PHP EXE Compiler Now Available
June 14, 2006 @ 05:54:14

On PHPBuilder.com today, there's a note that was submitted by Anders Hammar about a handy new tool to convert PHP applications into Windows executable files - Bambalam.

Bambalam PHP EXE Compiler/Embedder is a free command line tool to convert PHP applications to standalone Windows .exe applications. The exe files produced are totally standalone, no need for php dlls etc. The php code is encoded using the Turck MMCache Encode library so it's a good solution if you want to distribute your application while protecting your source code.

The converter is also suitable for producing .exe files for windowed PHP applications (created using for example the WinBinder library, or with PHP-GTK). It's also good for making stand-alone PHP Socket servers/clients (the php_sockets extension is included in the static build).

You can find out more about this free tool from their website or just download a copy and start checking it out.

1 comment voice your opinion now!
php bambalam executable compiler windows free tool php bambalam executable compiler windows free tool


Ben Ramsey's Blog:
New Site for Atlanta PHP
June 14, 2006 @ 05:50:34

Ben Ramsey has a note about something that I'm sure the PHP user group has noticed - the release of the latest Atlanta PHP website.

Over the weekend, Atlanta PHP launched its brand new Web site and forum. We hope that this new site and forum will allow us to serve our local developer community much more effectively.

Also, something that I've not pointed out in any of the language posted on the Atlanta PHP Web site is that the new forum allows members to get in touch with each other, something the Drupal installation we had did not allow. Members can send private messages or even e-mail to each other using the forum software.

He also notes that he's gone back to Meetup.com and created a group there for PHP developers looking for a group in the Atlanta, Georgia area, but it's mainly just there to funnel developers back to the main site.

0 comments voice your opinion now!
php user group atlanta new website forum meetup.com php user group atlanta new website forum meetup.com


Zend Developer Zone:
This Week in the Zend Framework, Issue #11
June 14, 2006 @ 05:45:29

On the Zend Developer Zone, Cal Evans brings us the latest happening in the world of the Zend Framework with this week's summary of events on the mailing list and community, issue #11.

Among the happenings this week, he mentions:

  • a mailing list thread about Zend_Pdf barcodes
  • discussion about Zend_Mail and mass mailings
  • a call for testers for working with True Type fonts in Zend_Pdf
  • a propsoal from Thomas Weidner for Zend_Locale
  • a propsosl from Aissam Bazzaoui for Zend_Service_Google

Of course, this is by no means a comprehensive list, and there are many more details to be found in the full listing (and explainations for each) over in this edition.

0 comments voice your opinion now!
php zend framework weekly summary issue11 php zend framework weekly summary issue11


RelativeSanity.com:
The Problem with PHP
June 14, 2006 @ 05:39:32

In this new post on RelativeSanity.com today, J Barrett talks about "the problem with PHP", specifically that its "sucks" because PHP itself is a sort of framework started on top of a series of Perl libraries.

I've been meaning to comment on Snook's article for a while, but to be honest I wasn't sure what I wanted to say. Coming at it (at the time I first read it) from the newfound point-of-view that frameworks were the new greatest thing, it was a little bitter to swallow, but I found that I couldn't disagree with most of what he was saying.

As I've often found, the key to resolving two apparently exclusive hypotheses (frameworks suck vs. frameworks rock) that you also happen to agree with equally, is to form a third hypothesis that distills down the key points of both, and discards the semantic fluff that makes the original two seem incompatible.

He comments, using this blog post from snook.ca as a starting point, about the main reason frameworks "suck" - they're like learning a whole other language. He notes that PHP (and its frameworks) are so popular because of its low entry barrier, but that doesn't mean it's a good thing in the long run.

Rails is a framework. PHP is a bunch of bricks.
0 comments voice your opinion now!
php problem framework language rails libraries php problem framework language rails libraries


php|architect:
Pro-PHP Podcast Interview with Jacob Taylor
June 13, 2006 @ 16:40:18

php|architect has a new note today about the next interview for the Pro::PHP Podcast with Jacob Taylor, Chief Architect and Co-Founder of SugarCRM.

Jacob defines, manages and develops the core Sugar Suite technology and has designed Sugar Suite to be one of the most conducive open source application projects for community development and contribution because of its modular architecture, high quality coding and superior scalability. Listen to Jacob explain why he chose PHP as the language to develop SugarCRM in, and how they are using it to make a huge impact in the CRM market.

If you'd like to attend the live interview (to be podcast later), head over and sign up today!

0 comments voice your opinion now!
php podcast interview jacob taylor sugarcrm signup php podcast interview jacob taylor sugarcrm signup


Sara Golemon's Blog:
libssh2 API documentation - Complete
June 13, 2006 @ 14:23:30

Continuing in the trend of completing documentation for projects, Sara Golemon has posted this information about completing the documentation for the libssh2 project.

After four months of (horribly boring and slow-paced) work, I've finally finished off the last of the libssh2 API documentation on the wiki. The material is still a bit rough and only helpful if you've already got the basics working (at which point you could have probably used the source documentation anyway). Next up I'll be working on a tutorial/example-usage section and maybe write up a few pages on basic secsh transport mechanics...

If you'd like to help contribute, check out the documentation wiki for the project and share your knowledge today!

0 comments voice your opinion now!
php libssh2 api documentation wiki complete php libssh2 api documentation wiki complete


Dan Scott's Blog:
In-depth _and_ official DB2 and PHP documentation
June 13, 2006 @ 14:03:23

In light of the recent release of the "Underground PHP and Oracle Manual" from the folks over at Oracle, Dan Scott has posted his own note about a pet project of his along the same lines - official task-oriented documentation for the pairing of DB2 and PHP.

By "task-oriented" I mean that, instead of documenting a set of objects and methods, the docs take the perspective of a developer and describe how to accomplish specific tasks (like "Connecting to a DB2 database from PDO" or "Calling a stored procedure" or "Retrieving multiple result sets"). I hope it works as both a good introduction to PHP development for DB2 users, and a good introduction to DB2 for PHP developers. And, of course, the same approach will work for Apache Derby databases as well.

He notes that he also finds it interesting that the Oracle folks went with the "underground" method of documenting its relationship to PHP, while the IBM documentation is integrated right in.

0 comments voice your opinion now!
php ibm db2 documentation official task-based php ibm db2 documentation official task-based


DevShed:
Using the Sleep and Wakeup Functions to Serialize Objects in PHP (Part 2)
June 13, 2006 @ 08:11:34

DevShed continues their "serializing objects" series today with part two of the series, highlighting the use of the sleep and wakeup functionality of PHP to help with the serialization.

After refreshing the concepts that I deployed in the first part of this series, it's time to focus on the topics that I'll cover in this article, so you'll know what to expect before you continue reading. In this second part, I'll explain how to use objects in conjunction with the "__sleep()" and "__wakeup() magic functions respectively, in order to get the most out of them.

They start with a look at defining self-saving objects with their ObjectSaver class developed earlier. Building on that reminder, they integrate the "__sleep()" and "__wakeup()" functionality to handle calls immediately before and immediately after the handling of the object. They then use this new functionality to create persistent objects, capable of maintaining values across page requests.

0 comments voice your opinion now!
php serialize object persist sleep wakeup save php serialize object persist sleep wakeup save


Community News:
Zend Technologies Adds Bill Ackermann as Vice President of Sales
June 13, 2006 @ 06:59:12

As mentioned in This post on the PHP Magazine site, Bill Ackermann has been added to the Zend team as the new Vice President of Sales.

Zend Technologies, the PHP Company, has announced that Bill Ackermann has joined the company as Vice President of Sales. Ackermann has held senior sales positions at both emerging and mature enterprise software category leaders, including Oracle, Netscape and most recently, Metreo. At Zend, Ackermann will oversee North American and Global Alliance sales and join the executive management team.

Ackermann joins Zend at a time when the adoption of PHP by developers and enterprise organizations is rising, the company says. Zend delivers products and services for developing, deploying and managing enterprise-class PHP applications, selling them directly and in partnership with large established companies like IBM and Oracle.

Always good to have bit of new, energetic blood in an organization, especially when it comes to working in Sales.

0 comments voice your opinion now!
php zend technologies vice president sales north america php zend technologies vice president sales north america


php|architect:
Writing an AJAX-based Visual Rating System with PHP
June 13, 2006 @ 06:06:48

In php|architect's ART respository today, there's a new article from Marco Tabini himself about the creation of an Ajax rating system for your site.

A rating system is a great tool for any website. It serves two important purposes: first, it gives your users a way to interact with your pages-and interactivity is an important aspect of any website these days. Second, it provides you with a valuable feedback tool that you can use to gauge viewer interest in individual areas of your site. In other words... everybody wins!

He explains the concept behind the system before ever getting into any code - a visual representation of the rating users are giving a particular article/posting. With that out of the way, he gets into the HTML first, explaining how the table is laid out before giving the code to pull together the images and form one seamless one representing the correct rating. He also demonstrates the use of a "secret hash" to protect the script against abuse.

Next up, he creates the PHP/SQL backend to handle the Ajax requests coming back in from the page, and setting a cookie to protect (somewhat) against more than one vote. Finally, he gives the Javascript you'll need to create the Ajax connection and relay the JSON message back to the server on the rating the user chose.

Of course, the code is available for download as well.

0 comments voice your opinion now!
php ajax visual rating system mysql cookie gd hash php ajax visual rating system mysql cookie gd hash


WebProNews.com:
In Praise Of PHP
June 13, 2006 @ 05:57:07

In this article on WebProNews, Andreas Roell praises PHP, nothing several strengths and its flexibility while the fact that it's kept its reliability over time.

PHP has been able to stand its ground as a consistently implemented server-side scripting language. PHP is a general-purpose scripting language that is ideally suited for web developers, and can be easily embedded into HTML.

He mentions the advantage it has of being Open Source as well as flexible enough to run on just about anything out there. PHP can be more cost-efficient than other solutions and, since it is Open Source, you're not left waiting for a company to release their next patch when they feel like it (fix it yourself!). And, of course, what would an article singing the praises of PHP be without a brief mention of its competitor, ASP.

0 comments voice your opinion now!
php praise open source cost-efficient asp flexible php praise open source cost-efficient asp flexible


SitePoint PHP Blog:
The Underground PHP and Oracle manual
June 13, 2006 @ 05:47:07

On the SitePoint PHP Blog today, Harry Fuecks has a few comments of his own about the just released PHP and Oracle Manual from the folks over at Oracle.

Chris Jones just announced the publication of the PHP and Oracle Manual (PDF) and from a high speed eyeballing, it's good-basically tells you everything you need to know to be able to do useful stuff with PHP + Oracle but with little assumed knowledge.

In fact it seems to be geared to the typical LAMP developer...

Harry does mention one thing he'd wished they've of added to this first edition - the SQL Developer desktop tool.

0 comments voice your opinion now!
php manual oracle opinion underground sql developer php manual oracle opinion underground sql developer


Scott Johnson's Blog:
Podcast - How to Learn PHP
June 13, 2006 @ 05:39:10

Scott Johnson is back today with another podcast, this time, focusing on methods for learning PHP. It's targeted at the very beginner level (PHP) developer to provide them with the tools and knowledge they'd need to advance in the language.

Ok then. That's like fate to a blogger telling you what to write and rather than JAT (yet another tutorial) I put together a podcast about how you can learn PHP. Not recommended for anyone who knows how to program but if you ever wanted to this will tell you how you can learn php (or any programming language).

He recommends three steps to follow to help you on your way:

  • purchase/borrow the Sams Publishing book from Luke Welling and Laura Thomson, "PHP and MySQL Web Development"
  • listen to the podcast he's created
  • and the most important step of all - code (practice).

People without experience in programming tend to think that you need ot learn everything about the language first, then try to go code something in it. Unfortunately, they realize (sometimes after a lot of work already) that that's just not the way to go.

Find a project - simple or hard - just find one. Even if you don't know the "best" way to do it, try. It can only help, and trust me, you'll learn more from doing than just reading any day. The book is a great starting place, and good for examples, but the real learning happens when developers do what they're meant to do - develop.

0 comments voice your opinion now!
php podcast howto learn programming book mysql sams php podcast howto learn programming book mysql sams


Zend Developer Zone:
...Bake Me a Cake as Fast as You Can
June 12, 2006 @ 17:50:05

This new post on the Zend Developer Zone site today helps to announce the first CakePHP "Baking Day".

Things are really starting to heat up in the kitchen over at CakePHP as they announce their first (annual?) Baking Day "24 Hour coding contest". While the ingredients list in incomplete for Baking Day we do know that it contain equal measures of of inspiration, hard work, teamwork and don't forget to mix in a heaping helping of the secret ingredient, CakePHP.

Armando Sosa also gives more details on it in his blog, noting some of the basic rules about the contest - you/your team have to build an application in 24 hours using CakePHP to be judged alongside other apps.

They're also looking for people to help out with the contest as well - judge/sponsor/collaborator - just let Armando know. To get all of the details on entering, check out their site.

0 comments voice your opinion now!
php cakephp framework baking day contest php cakephp framework baking day contest


Oracle Technology Network:
The Underground PHP Oracle Manual is Here
June 12, 2006 @ 12:27:38

As was briefly mentioned in this previous post from Christopher Jones, the time has finally come for the release of the "Undergroup PHP and Oracle Manual" - released today in PDF form [pdf].

The book is 124 pages of Oracle/PHP goodness, covering a wide range of topics - all the way from introductory material on the extensions out to simple globalization within the data. It's not a complete or complex guide to all things Oracle, but it is definitely a great resource to get you up and running quickly. They also won't teach you SQL, so you'll probably want to have a background in databases already.

The book is free for all to download and use, so grab your copy [pdf] today!

Christopher Jones also notes that they have plans to keep it updated as new chnages in the Oracle/PHP relationship arise.

0 comments voice your opinion now!
php oracle underground manual release pdf book php oracle underground manual release pdf book


DevShed:
Introducing SimpleXML in PHP 5
June 12, 2006 @ 07:19:13

DevShed starts up a new series today for those looking to work with XML in PHP5 and just need something light and, well, simple. To help, they've posted part one of their "Introduction to SimpleXML" series.

In response to all the exciting features that I mentioned before, in this three-part series I'll be taking a close look at the most important functions of the "simpleXML" extension, using numerous code samples and clear explanations to put them in context, so you can understand how they work.

At the end of the series, you should be equipped with the proper background to start using "simpleXML" in your own PHP 5 applications.

They start with a method for getting the data into a SimpleXML object in the first place, reading in an XML file. With the object (and data inside) in place, they show how to query that data (as array elements), pulling out the bits you need. Combine these two bits of functionality into a simple class and you'll have the last step of part one of the series - building a basic XML parsing class.

0 comments voice your opinion now!
php simplexml xml introduction part1 tutorial php simplexml xml introduction part1 tutorial


Dries Buytaert's Blog:
Drupal webserver configurations compared
June 12, 2006 @ 06:27:28

In this new post from Dries Buytaert, he takes a look at some of the common web server configurations for running Drupal on a pre-populated site with lots of users/nodes/path aliases/comments/etc.

After a little bit of configuration, he did some testing (with ab2) on the following benchmarks:

  • Drupal's built-in caching versus APC
  • a PHP4 installation versus a PHP5 install
  • Using a reverse proxy
  • mod_php versus FastCGI
  • Apache versus Lighttpd

In his conclusions, he notes that the slowest configuration for the install was the combination of PHP5 running as a module on Apache 2 without APC. The fastest - FastCGI on Lighttpd running the PHP4 version.

0 comments voice your opinion now!
php drupal webserver configuration benchmark fastcgi php4 php5 apache lighttpd php drupal webserver configuration benchmark fastcgi php4 php5 apache lighttpd


Nathan Smith's Blog:
PHP XML + Web Services
June 12, 2006 @ 06:13:12

On GodBit.com today, there's a new review of the book "Pro PHP XML and Web Services" from APress by Nathan Smith.

uite some time ago, Apress sent me Pro PHP XML and Web Services to review, and I am just now getting around to it. First off, let me say that this book is huge. It weighs in at 936 pages, and the one I have is a hard-cover. The author, Robert Richards has done an amazing job at providing an incredibly comprehensive volume, covering a vast amount of information.

Anything I write in this review will probably not do the book full justice, simply because it is so extensive. That being said, I will attempt to briefly summarize its contents, so you will have an idea of just how much is covered.

He lists out the chapters (including "Simple API for XML (SAX)", "XML Security", "Representational State Transfer (REST)") before pointing out some of the things he specifically enjoyed about the book, including:

  • the author's method of "demystifing" the concepts behind writing and using document type definition files
  • his coverage of DOM manipulation
  • mentions of using web services and Ajax
  • a bit on web site development for mobile devices

The review is definitely positive, Smith making a high recommendation for any developer looking to enhance their knowledge of both XML in PHP and coordinating that with web services.

0 comments voice your opinion now!
php book review xml web services apress php book review xml web services apress


Lukas Smith's Blog:
To serialize or to not serialize?
June 12, 2006 @ 06:01:46

In his latest post, Lukas Smith talks about serializing data - some of the pros and cons about it, as well as his experiences with it in the development of his own framework.

In my own framework I have decided that there is plenty of structured data that I will never query on that I will just stick into the database as a serialized array. Now the other day I modified the auto type handling in MDB2's quote() method to automatically serialize array's if no type is explicitly passed to the quote() method.

I send out a question to pear-dev@ and it was not unanimously well received. So I sat down and pondered a more elegant approach. Actually there is already one approach implemented in MDB2 since ages.

This implementation uses a seperate module that abuses PHP5's overloading functionality to integrate it easily. He also looked into another solution, however - creating a "datatype map" to help with the custom automatic serialization of datatypes (not just dependant on the variable type like before). Be sure to check out the comments for more thoughts on the subject, including validation of the custom datatypes.

0 comments voice your opinion now!
php serialize unserialize custom datatypes overloading modle mdb2 php serialize unserialize custom datatypes overloading modle mdb2


Mike Wallner's Blog:
Installing pecl_http
June 12, 2006 @ 05:49:17

Mike Wallner shares with us today a method for getting pecl_http installed and correctly configured for your system.

As pecl/http 1.0 has finally been released and I had noticed that it's been packaged already by several projects like PLD, Gentoo and FreeBSD, I wanted to explain what one is going to gain respectively lose by using the different build/configure options for the extension.

He goes through and explains each of the conifgure options - enable-http, with-http-curl-requests, with-http-zlib-compression, with-http-magic-mime, and with-htt-shared-deps - giving about a paragraph worth of information of what it is and what it does for the package.

0 comments voice your opinion now!
php install pecl pecl_http package configure options php install pecl pecl_http package configure options


HowToForge.com:
How To Set Up suPHP With PHP4 And PHP5
June 11, 2006 @ 14:16:24

On HowToForge.com today, there's a new tutorial on getting suPHP to work with both PHP4 and PHP5 installations.

This tutorial shows how to install and use suPHP with PHP4 and PHP5. suPHP is a tool for executing PHP scripts with the permissions of their owners instead of the Apache user. With the help of suPHP you can also have PHP4 and PHP5 installed at the same time which I will describe at the end of this article.

The tutorial steps you through the process - installation of apache (with apt-get), disabling the built-in PHP, installing apxs, installation of PHP4-CGI, and, finally suPHP. From there, it's all just configuration of the different packages up to a finished, working install.

0 comments voice your opinion now!
php php4 php5 suphp installation configuration php php4 php5 suphp installation configuration


Robert Ames' Blog:
Upgrading from PHP4 to PHP5
June 11, 2006 @ 13:34:24

For those out there wanting to make the move from PHP4 up to PHP5, Robert Ames has posted a few things to watch out for.

So, I've spent some time upgrading the darwingames.com codebase to be PHP5 compatible. For those considering the transition (and language designers who are considering an incompatible source version upgrade), I offer the following observations.

He breaks it down into to categories - the good and the bad. Some of the items on either list include:

  • static methods (good)
  • E_STRICT (bad)
  • random passing by reference gone (good)
  • replacing is_a() with instanceof (bad)

He also offers some of his personal suggestions for guidelines for future language updates.

0 comments voice your opinion now!
php php4 php5 upgrading good bad recommendations php php4 php5 upgrading good bad recommendations


Alexey Zakhlestin's Blog:
FastCGI in PHP - The way it could be.
June 11, 2006 @ 13:26:04

Alexey Zakhlestin shares with us in this new blog post, how the fast-cgi PHP developers think they're using isn't really a true FastCGI.

Most PHP programmers believe, that PHP has support for FastCGI. They refer to fastcgi-sapi, which is bundled with php since long ago, and which was recently reimplemented for PHP 5.1.3/4. This SAPI really does exist and actually working quite good. But… it is not a real fast-cgi. It is just an imitation of mod_php which is linked against fastcgi api, instead of apache api. So, it's time for you to ask: if it exists and works, then what am I talking here about? Let's start from the basics...

He talks about a history of how things go to where they are, starting back with regular CGI scripts, moving up through using server-based APIs, and finally to FastcGI, a method for overcoming a lot of the limitations of its predecessors.

With that look back, he turns his attention around and looks to the current situation within PHP. He talks about the sudden appearance fastcgi made in PHP's SAPIs, but that the implementation wasn't true. He suggests that the reasoning behind this "fake" implementation was for the sake of speed. He also notes, however, it's his opinion that true FastCGI support in PHP will be a requirement for future large-scale applications.

0 comments voice your opinion now!
php fastcgi sapi fake implementation php fastcgi sapi fake implementation


H3rald.com:
Akelos Framework - too good to be true?
June 10, 2006 @ 15:59:26

Over on H3rald.com today, there's their look at a new player in the PHP "inspired by Rails" framework category - and they're pretty impressed.

Someone recently added a comment to my article about Rails-inspired PHP frameworks pointing out that I forgot another Rails-like framework, in my round-up. He obviously posted a link to this rather mysterious Rails port in PHP and spam or not, I'd like to thank this guy for letting me know of the existance of Akelos, a new PHP framework which seems simply too good to be true.

He goes on, describing first some of the features the framework provides (tranasctions, code generation, template compilers, etc). There's also a list of other "goodies" specific to Akelos, including unit-tested source code, pure PHP support for Unicode, and distributed sessions using databases.

2 comments voice your opinion now!
php framework mvc akelos rails-inspired php framework mvc akelos rails-inspired


Zend Developer Zone:
This Week in the Zend Framework - Issue #10
June 10, 2006 @ 15:44:51

The Zend Developer Zone has posted their latest summary for all things Zend Framework for this past week - issue #10.

Some of the items mentioned this week include:

  • z proposal for Zend_Application_Context
  • an update from Jayson about the status of the framework
  • a discussion on the attachments options for Zend_Mail
  • the announcement of a new "Announcements list" (subscribe)
  • an inquiry about the work being done on Zend_Auth
  • and another update from Jayson mentioning the upcoming (soon) release of version 0.14 of the framework.

Of course, there was much more happening this week than just the above list, so head over to the full article for the whole story.

0 comments voice your opinion now!
php zend framework weekly summary issue10 php zend framework weekly summary issue10


PHPit.net:
An introduction to Test Driven Development with PHP
June 10, 2006 @ 15:37:36

PHPit.net has posted yet another PHP-related tutorial, this time with a focus on test driven development.

There are several different ways of developing something. Most of us tend to simply start with a script, and gradually move along. Perhaps we've even laid out our script before hand, but we tend to stay at the developing phase, and don't really start testing when it's necessary. Basically, we develop first, and test later.

But this might not be the best way, and might lead to problems later. That's why some developers advocate a different way of developing called Test Driven Development (TDD), where by you test first, and develop later.

He uses the SimpleTest frameork to illustrate his points. He starts off with a simple example - settin g up the framework and creating a class to test a class, Biter. The testing class first just looks to see if the Biter class exists, failing before they create the class file it's looking for. With the help of a bit more code and a few more test examples, you get a good jumping off point for creating your own tests to evaluate your code.

0 comments voice your opinion now!
php test drive development simpletest tutorial php test drive development simpletest tutorial


Bnnx.com:
Installing the Zend Optimizer
June 09, 2006 @ 09:39:32

In another "cut to the chase" kind of post today,