News Feed

News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Timothy Boronczyk:
PHP Assertions
November 08, 2012 @ 11:43:49

Timothy Boronczyk has written up a new post that looks at using assertions in PHP - the actual use of the assert function to evaluate values in your code.

I stumbled upon assertions in PHP today, though why I didn't know they existed after working with the language for so long and what I was looking for originally when I came across them are both mysteries. And with the increasing focus on software quality in the PHP community, I wondered why I hadn't seen them used by others. I decided to ask around, look into PHP's implementation of assertions, and do some tinkering.

He talks some about their usage, some of the common issues surrounding them and compares using them directly on return values vs evaled strings. He also includes an implementation of them in a bit of sample code - a class that uses them (and an assertion callback) to handle the throwing of exceptions.

Assertions are meant to identify program logic/design bugs, not as a run-time error handling mechanism. Isn't this why we do unit testing? Playing devil's advocate, what's wrong with pushing unit tests directly into your code if we have doc comments that are extracted for documentation?
0 comments voice your opinion now!
assertions native function overview exception error

blog comments powered by Disqus

Similar Posts Testing Error Conditions with PHPUnit

Stefan Mischook's Blog: Creating Your Own Functions - Part 2

DevShed: Displaying Meaningful Error Messages when Auto Loading Classes in PHP 5

Dallas PHP User\'s Group: PHP5 Exception Handling (presentation)

Miro Svrtan: PHP Fatal errors into exceptions natively

Community Events

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

community conference introduction series symfony2 language php7 performance application framework part2 interview release api configure laravel example composer opinion podcast

All content copyright, 2015 :: - Powered by the Solar PHP Framework