Attention Developers: Functions Should Return Things!

« »

Hey you…yeah you PHP developer, stop doing this:

<?php

function foo($bar)
{
    $baz = '<p class="myclass">' . $bar . ' is cool!</p>';
    echo $baz;
}

?>

That’s bad. Really bad. It’s frustrating. Particularly to a developer who comes after you, and wants to deal with the output themselves, for any number of reasons.

Please, when you write functions, return something, anything, kind of like this:

<?php

function foo($bar)
{
    $baz = $bar . ' is cool!';
    return $baz;
}

echo '<p class="myclass">'. foo('PHP') . '</p>';

?>

Why is this useful? By returning the string instead of outputting it, you give another developer who might interface with your function the ability to muck with the string themselves. Having played with WordPress all day, I can say from experience that having the output thrust upon me by default is a bad way of doing things. Bad, bad developers.

So please, return things. It provides the most flexibility for everybody, and makes it easier to use the code.

Brandon Savage is the author of Mastering Object Oriented PHP and Practical Design Patterns in PHP

Posted on 10/9/2008 at 7:25 pm
Categories: Web Architecture, Best Practices
Tags: , ,

There are currently no comments.

« »

Copyright © 2023 by Brandon Savage. All rights reserved.