// archives

Zend Framework

This category contains 8 posts

Logging in users via Zend_Auth without Sessions in PHP / Zend Framework

While sessions come in handy for many things, I like to avoid them for the sake of scalability. PHP itself uses a shared-nothing architecture, with only sessions needing special treatment.
Once you've got more than one web server, your options are to either use a custom session handler, a load balancer with IP affinity, the commercial […]

Dirty Rows and Audit Trails with Zend_Db_Table

There are various ways to update rows in a database table using the Zend_Db_Table components. You can use use Zend_Db_Table::update(), like so:

$table = My_Table();
$table->update(array('age' => 22), 'id = 1');

or retrieve the row, and update it:

$table = My_Table();
$row = $table->find(1)->current();
$row->age = 22;
$row->save();

The big difference between the two approaches is that by first retrieving the row, and […]

Zend_Db: Setting MySQL's timezone per connection

I have a Linux server with a system timezone of ET (US/Eastern). But I also have a web application that needs to run in a timezone of PT (US/Pacific). Of course that's not a problem at all. I just set the timezone in my web application's bootstrap:

date_default_timezone_set('America/Los_Angeles'); // Pacific timezone

Now I have another problem; the […]

The WSDL Blower: The state of SOAP in Zend Framework 1.6

There are all kinds of ways to expose APIs as web services. SOAP, XML-RPC, REST, JSON-RPC. Out of all of these, SOAP is arguably the most complex, but also one of the oldest ways to expose an API (I remember preliminary SOAP and WSDL support in Delphi 6, circa 2001).
Exposing an API as a web […]

Zend Framework 1.6 RC2 and FirePHP

After I had upgraded from Firebug 1.2.0b7 to 1.2.0b15, my web apps were no longer throwing any kind of logs into the Firebug console. I'm using the Zend_Log_Writer_Firebug class for that.
Luckily, just earlier today I noticed a new release of Firebug 1.2.0. And with that, FirePHP 0.1.1.2. But now there was a new problem:
["There was […]