|
The Zend Developer Zone has posted this release announcement for the latest version of Zend's application server Zend Platform 3.0:
Zend Technologies, the PHP company, today announced the general availability of Zend Platform 3.0. Zend Platform 3.0 is the only PHP application server created specifically to support the management, performance, integration and scalability requirements of organizations that use PHP to run businesscritical web applications. Zend Platform improves the end user experience with these web applications by enabling better application responsiveness, reduced application downtime, and richer functionality.
Updates from the previous version include:
Support for PHP 5.2
Zend Optimizer 3.2.3 and Zend Debugger 5.2.4 are included
New servers: Performance Mangement Server, Integration Servers and Enterprise Server
PHP Configuration Control enhancements
Actuate BIRT Reporting integration
and more [txt]
You can check out the features and everything about the Zend Platform on it's official page on Zend's website.
|
|
|
Stefan Esser has a post to the PHP Security Blog about his Month of PHP Bugs (March 2007) that will be happening and some of the new effects that the recent release of PHP 5.2.1 has had on it.
Today PHP 5.2.1 was released which fixes some (but not all) of the bugs I will cover in the Month of PHP bugs. Actually the release announcement already gives a list of bugs that were fixed.
He also comments on the reporting of the bugs in the Changelog and updates in the release announcements and how they're handled.
|
|
|
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.
|
|
|
Richard Thomas comments on a funny little PHP 'virus' that he's noticed coming to him via emails:
Got an email that claimed to be from my host, it used a generic return address and talked about security upgrades and such and how due to new policy to help keep a secure data center I was required to upload and run 1 of 2 files in a zip attachment, the first was a php file the other was an asp file.
Of course, it wasn't from the host, so he investigated a little further to find out exactly what was going on with the file. Basically, it was a modified nsTView file with some added emailing and password discovery code. The code was hidden though through a base64_encode call on one side and then decoded it on the other to cause the server to execute the code. He even posts and example of what the base64ed code might look like.
|
|
|
Evolt.org has an interesting new article posted today about combining CSS and PHP to display fractions correctly on your pages.
Most of us are uncomfortable with using fractions when writing programs. If we encounter a fraction, we will first convert it into a floating point number (with decimals) and proceed from there. Most programming languages would prefer to use 0.5 as opposed to 1/2 because the later might conflict with the syntax of the languages. In this article, I will discuss my attempt to work with fractions in one of the PHP projects that I have done.
They start with the CSS to handle the output before moving into the PHP code. The code given will take in a decimal number and do its best to match it up with a fraction string value out of an array. The result is the echoed out with sup and sub tags to create the correct effect.
|
|
|
Those just getting started with the latest version of the Zend Framework (0.7.0) will be happy to know that Rob Allen's introductory tutorial still applies (according to this new post).
Just a quick update to let you know that version 1.2.x of my Zend Framework Tutorial does actually work on version 0.7 of the framework with no changes. This is because the public API for the MVC components in 0.7 are backwards compatible with 0.6.
In his opinion this should be the case from now on as the basic components seem somewhat stabilized.
|
|
|
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.
|
|
|
Latest PEAR Releases:Log 1.9.10Net_LDAP 0.7.0PHP_Archive 0.10.0DB_Table 1.5.0RC1Math_BigInteger 1.0.0RC3DB 1.7.9pearweb 1.2.4PHP_Beautifier 0.1.12pearweb 1.2.5pearweb 1.3.0pearweb_phars 1.0.0pearweb_phars 0.1.0PHP_CompatInfo 1.4.1 |
|
|
Haroon Ahmad has posted a very good article on the use of different types of loops in PHP. Theory explained by practical examples which makes it very good to first understand the concept and then try it practically. |
|
|
WebCheatSheet.com has two new tutorials posted today one dealing with the export of a database schema in an XML format and the other about sending emails from PHP. Here's a link to the first article. Sometimes it can be useful to have a dump of the current database schema. This script reads the schema from a MySQL database and outputs XML that describes the schema.And a link to article number two. So, you want to send automated email messages from your PHP application. This can be in direct response to a user's action, such as signing up for your site, or a recurring event at a set time, such as a monthly newsletter. Sometimes email contains file attachments, both plain text and HTML portions, and so on. To understand how to send each variation that may exist on an email, we will start with the simple example and move to the more complicated. |
|
|
In a new tutorial from DevShed today, they walk you through the creation of a simple (very simple) RSS reader in PHP. In this article we are going to discuss how to create a PHPbased RSS reader. It would be helpful if you know something about XML, but not really necessary. RSS documents have three main tags: Title, Link and Description. And they all do exactly what their names suggest. I will go into detail about these tags in my second article dealing with ?building an RSS file.? For now, we will only focus on the ?reading? part of the article.They start with an overview, showing where you'll come from and where you're headed to. They include a section introducing the XML handing functions (SAX, not DOM) and use them in a chunk of code to read in the RSS file and handle the contents. |
|
|
According to this new post on PierreAlain Joye's blog today, a new version of the GD graphics library has been release version 2.0.34. It took a lot of work to get this version released. Version 2.0.34 is a bugfixonly release (all known security issues have been fixed), and upgrade is strongly recommended. It is also my very first GD release (hopefully, the first of many to come), and marks the official freeze of the 2.0.x tree, only securityrelated fixes will be made on this tree from now on. Please find the release announcement here.He also invlites any language binders to contact him about hosting for a project if it's not available. |
|
|
In a new post to his blog today, Stuart Herbert continues the theme he started in a previous post about a business case for PHP. In this new entry, he shares some things he's done to further the effort. To turn this from an idea into reality, I've setup a Google group where anyone who is interested can join in, and help build this resource. Please come along with your ideas and concerns, and let's see what we can achieve together.He also suggests some first steps to get the ball rolling, namely a list of topics the business case needs to cover. |
|
|
The latest version of the PHP language (in the PHP 5 series) has been released today PHP 5.2.1: The PHP development team would like to announce the immediate availability of PHP 5.2.1. This release is a major stability and security enhancement of the 5.X branch, and all users are strongly encouraged to upgrade to it as soon as possible. Further details about this release can be found in the release announcement 5.2.1, the full list of changes is available in the ChangeLog PHP 5.Among the security enhancements and bug fixes in this new release are:Prevent search engines from indexing the phpinfo() page.Fixed possible overflows and stack corruptions in the session extension.Fixed possible clobbering of superglobals in several code paths.Fixed a possible buffer overflow inside mail() and ibase_{delete,add,modify}_user() functions.and much more...Head over and download your copy today! Ilia Alshanetsky (release manager for the PHP 5 series) also has posted some comments about the release to his blog. |
|
|
If you're a PHP developer in the Greater Toronto Area and are looking for a job, you should check out this new post from Chris Hartjes' blog about positions with the company he works for VerticalScope Inc.. Want the chance to work with me? If you live in the Greater Toronto Area (we don't pay relocation costs or sponsor people) and know PHP, we may have a job for you. We're looking to fill at least two positions I'm aware of: nne junior developer and one intermediate developer.There's a a description of the position in the post, including requirements and a little background on the company. Interested applicants for eaither type of position should send their resume on to Chris at
This e-mail address is being protected from spam bots, you need JavaScript enabled to view it
with the subject of PHP / MySQL Developer position. |
|
|
In working with the Zend Framework, Richard Lord has come across something a little strange how Zend_View helpers work if you try to put them outside of the Framework's own helpers folder and try to use them. All is fine if you place your helpers either within the zend framework's own helpers folder (not a good idea) or within a directory in your site structure. The problem arises if you place the helpers in a folder in the PHP include path and don't know the full path to the folder.He investigates why this might happen, tracking it down to some include issues despite mimicking the structure the Zend Framework itself recommends. Unfortunately, this still requires knowing the full path to the helper, not the relative. Unfortunately, that's just not what he needs. So, he set out to find a solution and ended up with two one that makes a modification to the Zend_View_Abstract class and the other is to extend the Zend_View class with his own custom class handling the pathing to pull the helper in correctly. |
|
|
DevShed has posted the final installment of their series looking at the creation and use of the Abstract Factory pattern. In this new part, they focus on the creation of online forms and their handling as the pattern is applied. In this last installment of the series, I'm going to show you how to use an abstract factory class to create distinct types of form objects, logically depending on the context where they will be utilized. The idea not only sounds interesting, but it can provide you with a better understanding of how this handy pattern can be used in a real situation.They start by defining their abstract factory form class and extending it to create a required form element and a normal form element. They make input functions for each required input box, required radio button, required check box and their Normal counterparts. Finally, they tie these all together to create a simple form with sets of an input box, radio set, and checkboxes both required and normal. |
|
|
The symfony team have made it even easier to access all of the goodies inside their online version of their The Definitive Guide to symfony book (buy it). They've added keyword navigation to the righthand side of the page to make searching simple. Many impatient symfony users complained that the online version of the book missed the keywords sidebar. We didn't have time to rewrite it for the launch of the online book, but now it is repaired. Google is currently rebuilding its index of our website, so the search box in this sidebar will soon give relevant results again.They've also created a less graphic version to make things even faster. Other translation initiatives have also started up to get the book put into Chinese, French, and Spanish. |
|
|
Continuing on from an earlier discussion about the Zend Framework and form submission and handling, Alexander Netkachev has come back to talk a bit more about the Controller/Action approach. I have a few discussions here about the question I opened a couple of days ago: how the standard form processing is related to the Controller/Action idea and how developers that are creating sites with the standard Folder/Page approach can use Zend Framework's Controller/Action approach.What came out of the discussions were three points use the Controller/Action model to your advantage, use your own forms but use RewriteRouter to make them work, or use the Folder/Page mentality instead. |
|
|
As reported by the International PHP Magazine website, the results of the latest TIOBE Programming Community Index are in for the month and PHP is on the rise. PHP has moved back up to take its spot back at #4 with (Visual) Basic falling back down to #5. As the trends graph shows, PHP had a sharp spike back up to overtake VB starting with the new year. If it continues the climb, it could be back up to levels it was during the middle of last year. The TIOBE Programming Community index gives an indication of the popularity of programming languages. The index is updated once a month. The ratings are based on the worldwide availability of skilled engineers, courses and third party vendors. |
|