PHP 5.3.1 is finally here!

PHP LogoAfter four release candidates, we finally have a stable PHP 5.3.1 release.  For those already running PHP 5.3.0, there’s not much that is different, but there are some improvements.  For others, it means there will probably be PHP 5.3 support in cPanel/WHM via EasyApache very soon.

In PHP 5.3.1, the max_file_uploads directive was introduced into php.ini to help prevent DOS (denial of service) attacks via file exhaustion.  max_file_uploads is set at 20 by default.  There were also several other security issues patches, and many bugs fixed in this release.  Links containing additional details are below:

Windows Experience Index assessment details in XML format

Since coming from Windows XP to Windows 7 (skipping Vista), I’ve come to love all of its new features, including the Windows Experience Index.  For those who are not aware, the Windows Experience Index is a score based on the performance of the CPU, RAM, graphics, gaming graphics, and the hard drive.  Microsoft touts it as a way to see how floor computer models match up against one another, specifically to be used when buying a new computer.  In addition, the Windows Experience Index can be used to do more than just calculate a score.  In fact, detailed results are constructed in XML format, and saved within a directory on your computer.

Control Panel: Windows Experience Index
Control Panel: Windows Experience Index
Continue reading Windows Experience Index assessment details in XML format

Windows 7 Cheat Sheet (Shortcuts/Hotkeys, Reference, etc.)

Just moments ago, I finished creating a Windows 7 reference card or cheat sheet (whichever you prefer), which includes various hotkeys/shortcuts, as well as general information on Windows Flip 3D, Windows Aero, Windows Snap, and Windows Peek.  See below for the download link (4-page PDF).

Windows 7 Shortcuts and Cheat Sheet (2-page preview)
Windows 7 Shortcuts and Cheat Sheet (2-page preview)

Download the Windows 7 Cheat Sheet (PDF)

Two sites for testing your Internet connection quality and speed

Today, I found two great sites for testing your Internet connection.  Speedtest.net will test your download and upload speeds, while Pingtest.net measures the quality of your Internet connection.  The download speed for my connection ended up being 15.07 Mbps which is equal to 1.884 MB/sec.  To convert Mbps to MB/KB per second, you may use Media Road’s conversion tool.  According to the tests, we have a good connection.  Post your results!

speedtest.net
speedtest.net
pingtest.net
pingtest.net

PHP 5.2.12 RC1 and PHP 5.3.1 RC4 released!

Yes, that’s right, another PHP 5.2 version, and the fourth release candidate for PHP 5.3.1… the details are as follows:

  • PHP 5.3.1 RC4
    • Three bug fixes including one for mysqli and safe_mode_include_dir
    • Complete list
  • PHP 5.2.12 RC1
    • Added max_file_uploads as seen in PHP 5.3.1 RC3, which helps prevent DOS attacks occurring via temporary file exhaustion
    • Fixed Snow Leopard build error
    • Fixed make install-pear failure
    • Fixed parse_url() incorrect with ? in fragment
    • Complete list

Clearly, the PHP 5.2.12 release candidate is much more exciting than PHP 5.3.1’s, which tells me we are getting closer to a stable PHP 5.3.1 release.  A download link for both versions is included below.

Download PHP 5.3.1 RC4 or PHP 5.2.12 RC1

PHP 5.3.1 RC3 released!

We are yet another release candidate closer to PHP 5.3.1.  A link to download PHP 5.3.1 RC3 is included below, as well as links to the changelog and current bugs.  One bug fix will help prevent DOS (denial of service) attacks via a new INI directive labeled max_file_uploads.  This will default to 100 files per request.

Download PHP 5.3.1 RC3

10+ WordPress Functions Every Developer Should Know About

add_action($tag, $function_to_add, $priority, $accepted_args)
do_action($tag, $arg)

add_action() attaches a function to a specific action, which is then triggered by a do_action() call somewhere during execution. This can be used to execute a group of functions using the $priority parameter to determine order (optional), and arguments can be passed through the $accepted_args parameter. Below are a few examples of how this is used in the WordPress platform:

WordPress Logo

  • do_action(‘deleted_post’)
    This is executed after a post or page is deleted, and post or page ID is passed as a parameter.  This allows you add custom functionality whenever a post is deleted.  For example, lets say you want to be notified every time a post is deleted.  You can create a function to send the e-mail, and execute add_action(‘deleted_post’, ‘notify_when_deleted’, 10, $email). After that, when do_action(‘deleted_post’) is called, the notify_when_deleted() function will be called.
  • do_action(‘wp_head’)
    The wp_head action is traditionally called within a theme’s header.  If you wanted to create an SEO plugin, you could very easily add an action to wp_head to display meta tags. Continue reading 10+ WordPress Functions Every Developer Should Know About

jQuery Tablesorter helper function for WordPress

In one of my projects, I converted WordPress into a reporting engine, which is used at 20 car dealerships to track Internet sales.  During development, I found that I was writing the same code over and over again for the jQuery Tablesorter plugin, which allows you to sort tables using a simple JavaScript call.

First, I would have to queue the script file, then add the appropriate JavaScript. To ensure the JavaScript was executed at the right time, I had to create a function to use it with add_action().  I found this to be tedious and unnecessary, and wrote a simple helper function to remedy this.  The following function was added to /wp-admin/includes/template.php, but if you use it, it will most likely go in a plugin or theme include.  This will prevent it from being overwritten during WordPress upgrades. Continue reading jQuery Tablesorter helper function for WordPress

Rebuttals… Because Windows 7 rocks my socks off

“The Start Menu in Windows 7 will be an area of much consternation for veteran Windows XP users.” —James Perlow at ZDNet [link]

Yes, the Start Menu is different in Windows 7, but the core functionality is the same.  Windows XP users are still able to view programs by clicking a menu item, and the Control Panel, Printers, Documents, etc., are still easily accessible from the same place.  Perlow, the author, also mentions that the Run menu is no longer directly accessible from the Start menu, and complains that power users will have to turn it on.  Wow… is this laziness or what?  In just a few clicks, this functionality can be restored… BUT, and this is a huge BUT, I am willing to bet that power users aren’t going to want to use the Run dialog that much in Windows 7.  The beauty of this setup is that you can type your command directly into the “Search programs and files” box in the Start menu.  I think it’s also worth mentioning that users can open up the command prompt very easily by holding SHIFT and right-clicking on a folder in Windows Explorer, then clicking Open command window here.  This was available in Windows XP, but only via a PowerToys installation. Continue reading Rebuttals… Because Windows 7 rocks my socks off