Garri

In my free time, I do programming.

February 2007 - Posts

PHP-GTK2 Testrunner for PHPUnit

Startup

Directly after starting, the GTK Testrunner looks like this:

http://static.phpunit.de/gtkui/PHPUnit_PHP-GTK2_Testrunner_startup.png

You should the use the "File" menu for either opening a single test suite or for searching your project for your test suite files, to load multiple of them.

Open file

http://static.phpunit.de/gtkui/PHPUnit_PHP-GTK2_Testrunner_fileopen.png

The file open dialog allows you to select a PHP source code file, which should contain a class declaration that extends PHPUnit_Framework_TestSuite. The selected file will then be required and all found test suites will be displayed in the main window, so you can select them for being run.

Find files

http://static.phpunit.de/gtkui/PHPUnit_PHP-GTK2_Testrunner_filefind.png

Since your project most propably contains multiple test suites, you can use the file find dialog to find all of the them and select multiple of them for being loaded.

A loaded test suite

http://static.phpunit.de/gtkui/PHPUnit_PHP-GTK2_Testrunner_loadedsuite.png

Once you loaded a test suite, the main window will display it in a tree view. You can either select the whole suite, any of its sub-suites or single test cases for being run.

Running tests

As soon as you have selected test cases for running, you can start the test run by clicking the "Run" button.

http://static.phpunit.de/gtkui/PHPUnit_PHP-GTK2_Testrunner_runningsuite.png

The GTK UI will indicate the progress of your tests in a progress bar and add status information about each test case to the status window, as soon as it starts running the tests case. Beside that, an icon in the suite tree indicates the status of the test.

Viewing details

The status tree contains a large bunch of information after a test run. To directly jump to the last status information of a certain test case, simple double click it in the suite tree.

http://static.phpunit.de/gtkui/PHPUnit_PHP-GTK2_Testrunner_failedtest.png


Tobias Schlitt has announced the development of a PHP-GTK2-based test runner for PHPUnit. It will be part of the upcoming PHPUnit 3.2 release (roadmap). Screenshots are here.

Thank you, Tobias, for working on this!
Posted: 02-21-2007 10:47 AM by Garri | with no comments
Filed under: , , ,
CodeIgniter 1.5.2 Released!

Change Log

Version 1.5.2

Release Date: February 13, 2007

  • Added subversion information to the downloads page.
  • Added support for captions in the Table Library
  • Fixed a bug in the download_helper that was causing Internet Explorer to load rather then download
  • Fixed a bug in the Active Record Join function that was not taking table prefixes into consideration.
  • Removed unescaped variables in error messages of Input and Router classes
  • Fixed a bug in the Loader that was causing errors on Libraries loaded twice. A debug message is now silently made in the log.
  • Fixed a bug in the form helper that gave textarea a value attribute
  • Fixed a bug in the Image Library that was ignoring resizing the same size image
  • Fixed some doc typos.
Young Multimedia and Graphic Designers' Summit (YMGDS 2007)
Calling all Aspiring Graphic Artists
and Multimedia Enthusiasts !
onlineposter.png
Join the FIRST
Young Multimedia and
Graphic Designers' Summit
(YMGDS 2007)
at De La Salle University Manila
February 23 and 24, 2007
(Friday and Saturday)
Featuring
Mr. Avid Liongoren (http://www.avidlion goren.com)
Team Manila Graphic Design Studio (http://www.teammani la.com)
Mr. Ranulf Goss (Matahari Studios)
Participate in
Hands-on Seminars and Workshops on
Graphic Design, Flash Animation, Web Design,
Digital Audio, 3D Animation, and more!
Registration fee is only Php 250.00!
For more details
or email us at moomedia07@gmail. com
Brought to you by:
DLSU Moomedia
e-Aji
Adobe Users Group Philippines (AUGPhil)

A taste of Zend Framework
Nope not the preview release 0.70 I got stuck there at the bootstrap. Then how did I get to taste the ZF? through ZendFramework-20070208-3289 I downloaded the Latest Snapshot for February 8, 2007 and after a few days (not religiously coding) just trying to make it work kinda stuff hehehe I finally finished up one tutorial from http://akrabat.com/zend-framework-tutorial/ it's just a simple demonstration of CRUD in ZF.

I'm a die hard supporter of CodeIgniter it opened my eyes to the MVC philosophy with ease if ever I did try to learn MVC with CakePHP. The outstanding user manual the great video tutorial supported many PHP Developer to try CodeIgniter and are now actively helping other PHP Developer to try CodeIgniter.

But then there is ZF, after RoR success the company behind PHP is now on it's move to create something to uphold the PHP Flag thou there are already numbers of PHP Frameworks and scored. IMHO supporting 1 Framework can promote Code Maintainability, Development Speed and Code Readability.

I'm not against Ruby or Rails in fact I like to try them sometime after I have set up a Development Server for it. I'm now searching of ways to make Ruby and PHP work in harmony in my old Ubuntu box.

here are some screenshot:
http://i2.photobucket.com/albums/y6/Garrizaldy/Screenshot.png
http://i2.photobucket.com/albums/y6/Garrizaldy/Screenshot-1.png

To help us with the learning curve. (it's not that steep! promise!)
TUTORIALS
http://framework.zend.com/wiki/display/ZFUSER/External+Resources+-+Tutorials,+Articles,+and+Examples
*for those in french for example just http://babelfish.altavista.com/ them Twisted Evil

PHP 101: PHP For absolute Beginner

From: http://devzone.zend.com/node/view/id/627

PHP 101: PHP For the Absolute Beginner


This area is intended for everyone new to PHP. It opens with a series of informal, entertaining tutorials written by Vikram Vaswani, founder and CEO of Melonfire. These tutorials build on a previously-published 5-part series which has now been updated and extended to embrace PHP 5, making parts of it suitable for those of you who already have worked with PHP 4 in the past.

If you came here to learn about elementary PHP 4 or basic PHP 5, this is for you. Enjoy!

PHP 101 (part 1): Down the Rabbit Hole [July 17, 2004]
An introduction to PHP’s variables and operators.

PHP 101 (part 2): Calling All Operators [July 18, 2004]
The rest of the PHP operators (there are many), and simple form processing.

PHP 101 (PART 3): Looping the Loop [July 19, 2004]
Basic control structures explained.

PHP 101 (PART 4): The Food Factor [July 20, 2004]
Arrays, PHP array functions, and what it all means.

PHP 101 (PART 5): Rank and File [July 21, 2004]
Everything you’re ever likely to need to know about dealing with external files from a PHP script.

PHP 101 (PART 6): Functionally Yours [July 28, 2004]
All about functions, arguments, passing by reference, globals and scope.

PHP 101 (PART 7): The Bear Necessities [August 07, 2004]
A gentle introduction to object oriented programming in PHP 4 and PHP 5.

PHP 101 (PART 8): Databases and Other Animals [August 31, 2004]
All about connecting to a MySQL database from PHP, using the mysql or mysqli extensions.

PHP 101 (PART 9): SQLite My Fire! [September 16, 2004]
Introducing another database: SQLite.

PHP 101 (part 10): A Session In The Cookie Jar [October 3, 2004]
Sessions and cookies – how to keep track of visitors to your site.

PHP 101 (part 11): Sinfully Simple [October 3, 2004]
An introduction to PHP’s easiest method for dealing with XML.

PHP 101 (part 12): Bugging Out [January 30, 2005]
Basic error handling.

PHP 101 (part 13): The Trashman Cometh [February 27, 2005]
A primer in basic security.

PHP 101 (part 14): Going to the Polls [March 8, 2005]
Putting the pieces together – a first Web application.

PHP 101 (part 15): No News is Good News [June 4, 2005]
Creating a simple RSS news aggregator.

CodeIgniter :: PHP 'on Rails'..?

Code Igniter is an Open Source Web Application Framework

that makes writing kick-ass PHP programs simple as apple pie

Designed to enable, not overwhelm, Code Igniter is a powerful PHP framework with a very small footprint, built for PHP coders who need a simple and elegant toolkit to create full-featured web applications.

If you're a developer who lives in the real world of shared hosting accounts and clients with deadlines, and if you're tired of ponderously large and thoroughly undocumented frameworks that require rocket science to understand, Code Igniter might just be the right tool for you.

Who is Code Igniter For?

Code Igniter is right for you if:

  • You want a framework with a small footprint.
  • You need exceptional performance.
  • You need broad compatibility with standard hosting accounts that run a variety of PHP versions and configurations.
  • You want a framework that requires nearly zero configuration.
  • You want a framework that does not require you to use the command line.
  • You want a framework that does not require you to adhere to restrictive coding rules.
  • You are not interested in large-scale monolithic libraries like PEAR.
  • You do not want to be forced to learn a templating language (although a template parser is optionally available if you desire one).
  • You eschew complexity, favoring simple solutions.
  • You need clear, thorough documentation


Code Igniter at a Glance

Code Igniter is an Application Framework

Code Igniter is a toolkit for people who build web application using PHP. Its goal is to enable you to develop projects much faster than you could if you were writing code from scratch, by providing a rich set of libraries for commonly needed tasks, as well as a simple interface and logical structure to access these libraries. Code Igniter lets you creatively focus on your project by minimizing the amount of code needed for a given task.

Code Igniter is Free

Code Igniter is licensed under an Apache/BSD-style open source license so you can use it however you please. For more information please read the license agreement.

Code Igniter Runs on PHP 4

Code Igniter is written to be compatible with PHP 4. Although we would have loved to take advantage of the better object handling in PHP 5 since it would have simplified some things we had to find creative solutions for (looking your way, multiple inheritance), at the time of this writing PHP 5 is not in widespread use, which means we would be alienating most of our potential audience. Major OS vendors like RedHat have yet to support PHP 5, and they are unlikely to do so until 2007, so we felt that it did not serve the best interests of the PHP community to write Code Igniter in PHP 5.

Note: Code Igniter will run on PHP 5. It simply does not take advantage of any native features that are only available in that version.

Code Igniter is Light Weight

Truly light weight. The core system requires only a few very small libraries. This is in stark contrast to many frameworks that require significantly more resources. Additional libraries are loaded dynamically upon request, based on your needs for a given process, so the base system is very lean and quite fast.

Code Igniter is Fast

Really fast. We challenge you to find a framework that has better performance then Code Igniter.

Code Igniter Uses M-V-C

Code Igniter uses the Model-View-Controller approach, which allows great separation between logic and presentation. This is particularly good for projects in which designers are working with your template files, as the code these file contain will be minimized. We describe MVC in more detail on its own page.

Code Igniter Generates Clean URLs

The URLs generated by Code Igniter are clean and search-engine friendly. Rather than using the standard "query string" approach to URLs that is synonymous with dynamic systems, Code Igniter uses a segment-based approach:

1
www.your-site.com/news/article/345

Note: By default the index.php file is included in the URL but it can be removed using a simple .htaccess file.

Code Igniter Packs a Punch

Code Igniter comes with full-range of libraries that enable the most commonly needed web development tasks, like accessing a database, sending email, validating form data, maintaining sessions, manipulating images, working with XML-RPC data and much more.

Code Igniter is Extensible

The system can be easily extended through the use of plugins and helper libraries, or through class extensions or system hooks.

Code Igniter Does Not Require a Template Engine

Although Code Igniter does come with a simple template parser that can be optionally used, it does not force you to use one. Template engines simply can not match the performance of native PHP, and the syntax that must be learned to use a template engine is usually only marginally easier than learning the basics of PHP. Consider this block of PHP code:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<ul>

<?php foreach ($addressbook as $name):?>

<li><?=$name?></li>

<?php endforeach; ?>

</ul>

Contrast this with the pseudo-code used by a template engine:
<ul>

{foreach from=$addressbook item="name"}

<li>{$name}</li>

{/foreach}

</ul>

Yes, the template engine example is a bit cleaner, but it comes at the price of performance, as the pseudo-code must be converted back into PHP to run. Since one of our goals is maximum performance, we opted to not require the use of a template engine.

Code Igniter is Thoroughly Documented

Programmers love to code and hate to write documentation. We're no different, of course, but since documentation is as important as the code itself, we are committed to doing it. Our source code is extremely clean and well commented as well.

Code Igniter has a Friendly Community of Users

Our growing community of users can be seen actively participating in our Community Forums.

http://www.bitwisemag.com/copy/programming/php/dev/code_igniter_interview.html