News Feed
Jobs Feed
Sections

Recent Jobs

News Archive
feed this:

Sebastian Bergmann's Blog:
Freezing and Thawing PHP Objects
December 01, 2008 @ 11:12:18

Sebastian Bergmann has posted details (and a patch) for freezing and unfreezing objects via the new setAccessible method included in the SPL in PHP 5.3.

One of the many new features that have been added for PHP 5.3 is the setAccessible() method of the ReflectionProperty class that is part of PHP's Reflection API. This method makes protected and private attributes (unfortunately, the class is called ReflectionProperty instead of ReflectionAttribute) of a class or object accessible for the ReflectionProperty::getValue() and ReflectionProperty::setValue() methods, thus making protected and private attributes "open" for full read and write access from the outside.

A bit of code shows how to "freeze" and "thaw" the objects out - creating an object, calling the freeze() method on it to protect it from use, then the thaw() method to bring it back out where it can be accessed. Stefan Priebsch helped to create this class and the patch.

0 comments voice your opinion now!
freeze thaw object php5 patch spl setaccessible



NETTUTS.com:
Real-World OOP With PHP and MySQL
November 26, 2008 @ 11:41:47

On the NETTUTS.com site, there's a new tutorial that looks to be a basic introduction to the world of Object-oriented programming in PHP.

Numerous examples from robots to bicycles have been offered as "easy" explanations of what OOP is. I've opted to show you how OOP works with a real-life example, for a programmer. By creating a MySQL CRUD class you can easily create, read, update and delete entries in any of your projects, regardless of how the database is designed.

Their CRUD example not only serves as an introduction to OOP, but can also be an introduction to MySQL support for those that haven't used it before. They create six functions - the four for CRUD and a connect and disconnect. The full source is available for download too.

0 comments voice your opinion now!
oop object oriented tutorial crud database mysql


Eran Galperin's Blog:
OO PHP Templating
November 18, 2008 @ 13:05:30

On the TechFounder blog, Eran Galperin has taken a look at object-oriented templating in PHP applications, comparing the older search and replace method with the inclusion of PHP-based templates.

PHP as a language can be considered a templating system, as in its root it was meant to modify HTML pages dynamically. The need for more structured templating systems arose as PHP applications have grown more and more complex, giving birth to much more specialized and focused solutions.

He illustrates with an object replacement example - parsing the template as a PHP script and replacing any objects found with the corresponding object property value.

0 comments voice your opinion now!
template project search replace include object


IBM developerWorks:
What's new in PHP V5.3, Part 1 Changes to the object interface
November 12, 2008 @ 11:13:30

John Mertic has put together a what's new list in the upcoming PHP 5.3 release:

PHP V5.3 is set to be released by the end of 2008, and many of the new features in this release have been in the planning stages for a few years. Originally touted as "PHP V6 without native Unicode support," PHP V5.3 has been developed into a feature-rich upgrade to the PHP V5 line. [...] In this "What's new in PHP V5.3" series, we'll look at these new V5.3 features, and see how they are used and how they can be used in your Web application.

In this first part of the series he talks about:

  • Improved static method and member handling
  • The _callStatic() magic method
  • Dynamic static calls
  • Late static binding
  • Standard PHP Library
  • Circular garbage collection
0 comments voice your opinion now!
object interface php5 whatsnew static lsb spl garbage collection


SitePoint PHP Blog:
How to Expose PHP's Private Parts
November 11, 2008 @ 09:32:14

On the SitePoint PHP Blog Troels Knak-Nielsen has worked up a way to "expose PHP's private parts" when it comes to finding out more about the object/variable he's working with (without a usual print_r or var_dump).

I've been tinkering with dumping PHP objects, and have found myself constantly running into a brick wall. The output from print_r and friends is fine in some contexts, but for larger structures, it would be nice to tidy the output up a bit and wrap it in some HTML.

His solution is to serialize the object into a string (keeping all related meta information) that can be passed around and parsed back into its original form for debugging. He's included the script that works bye taking in the string and manually parsing it back out into its parts into a useful array.

0 comments voice your opinion now!
expose output debug serialize object private protected tutorial


David Otton's Blog:
Neat PHP Tricks How To Assign References to Globals
November 10, 2008 @ 09:32:18

David Otton has a new neat PHP trick posted today - assigning references to global values.

What follows isn't so much a PHP trick as a fix for something that really should work, but doesn't. Although the manual implies that the behaviour described below is specific to Zend Engine 1, all my tests were performed against Zend Engine 2.2, PHP 5.2.5.

His example compares making a new stdClass both with and without a reference on the it and var_dumps out the result. The method with the reference fails silently, however and isn't able to correctly assign it to the global. He recommends a work-around though - setting it directly to the $GLOBALS superglobal.

0 comments voice your opinion now!
reference global superglobal trick assign object example


PHPBuilder.com:
Remote objects and Zend_Amf
November 07, 2008 @ 13:40:48

On PHPBuilder.com Richard Bates has continued his series introducing the Zend_Amf component of the Zend Framework and how to get a sample project setup that uses it.

Last week we discussed the new Zend Framework extension and gave you a look inside its functionality. This week we take off where we ended last week, and delve into remote objects and Zend_Amf!

The tutorial walks you through the setup of a new project, the PHP code behind it and how to get the two talking back and forth through a RemoteObject. Screenshots and complete code are included.

0 comments voice your opinion now!
remote object zendamf tutorial screenshot remoteobject


Zend Developer Zone:
Using Data Objects with PHP and DB_OO2
October 27, 2008 @ 10:28:12

This new tutorial from the Zend Developer Zone (by Vikram Vaswani) looks at getting data objects set up between PHP and the DB_OO2 package.

Data objects, which provide an API for accessing and manipulating database tables, are one such tool. There are a number of implementations for data objects in PHP, most notably the popular PEAR DB_DataObject package. This tutorial focuses on one such implementation, the DB_OO2 package, showing you how it can significantly reduce your coding time when working with database tables.

The DB_OO2 package (PEAR) lets you set up references to your database tables as objects and interface with them by setting properties and calling standardized functions. Many of the PHP frameworks out there let you do this same sort of thing, but those are built in - this method lets you use the package wherever.

0 comments voice your opinion now!
pearc package dboo2 data object database table interact


PHPClasses.org:
PHP Object-Relational Mapping ORM or ROM?
October 10, 2008 @ 12:09:37

On the PHPClasses.org blog today Manuel Lemos has posted a look at ORM - what it is and how you can use it to improve your applications.

Object-Relational Mapping, usually referred as ORM, is a software development approach to treat data stored in relational (SQL) database table records as if they were objects. Basically we can create classes with variables that represent fields of a database table. To insert a table record you need to create an object of the class, assign the variable values, and call a function of the class that takes care of inserting the table record

He illustrates what it is (brief code samples) and some of the approaches that developers have taken to implementing it. He suggests, however, that they should truely be called ROM (Relational Object Mapping) libraries rather than ORM due to the fact that they map an object (the database tables) back in to PHP objects. He finishes with a list of a few ORM resources and libraries including the one that helps power the PHPClasses website, Metastorage.

0 comments voice your opinion now!
phpclasses orm object relational mapping database layer


Solar Blog:
Using registry_set to auto-register objects
September 23, 2008 @ 08:47:36

In this recent post from the Solar blog, anttih shows how to use the Solar registry to automatically load and register objects when it starts up.

Solar_Registry is a class for storing singleton objects which are used usually for things like SQL objects and the response and request objects. Now what's interesting, is that in the new version of Solar a new configuration key registry_set was added for the Solar arch-class. You can use it to tell Solar to automatically add objects to the registry when it starts up.

He compares the two methods - manual loading and the automatic version and includes a "real world" example of loading up an SMTP object.

0 comments voice your opinion now!
solar framework solarphp registry registryset automatic object



Community Events







Don't see your event here?
Let us know!


zend zendframework PHP5 framework example job book developer PEAR database mysql security ajax code package releases cakephp release application conference

All content copyright, 2008 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework