The Weird and The Wonderful
The Weird and The Wonderful forum is a place to post Coding Horrors,
Worst Practices, and the occasional flash of brilliance.
We all come across code that simply boggles the mind. Lazy kludges, embarrasing mistakes, horrid
workarounds and developers just not quite getting it. And then somedays we come across - or write -
the truly sublime.
Post your Best, your worst, and your most interesting. But please - no
programming questions . This forum is purely for amusement and discussions on code snippets. All
actual programming questions will be removed.
|
|
 |

|
Came across this "class" during a code review. My reaction is pretty much "the f*** is this". Do you think this is good code or not?
class Listalizer {
public static function listalize( $convert, &$data ) {
if ( is_object( $data ) ) {
try {
$data = call_user_func( $convert, $data );
} catch ( \Exception $ex ) {
try {
trigger_error( "listalize: Callable " . self::callable2String( $convert )
. " caused an exception: " . $ex->getMessage(), E_USER_WARNING );
} catch ( \Exception $exx ) {
$exx = (object)$exx; }
$data = false;
}
}
if ( is_array( $data ) || $data instanceof \ArrayObject ) {
foreach ( $data as $key => &$value ) {
self::listalize( $convert, $value );
}
}
}
public static function objectify( $convert, &$data, $role = null ) {
if ( is_array( $data ) ) {
try {
$data = call_user_func( $convert, $data, $role );
} catch ( \Exception $ex ) {
try {
trigger_error( "objectify: Callable " . self::callable2String( $convert )
. " caused an exception: " . $ex->getMessage(), E_USER_WARNING );
} catch ( \Exception $exx ) {
$exx = (object)$exx; }
$data = false;
}
}
if ( is_array( $data ) || $data instanceof \ArrayObject ) {
foreach ( $data as $key => &$value ) {
self::objectify( $convert, $value, $key );
}
}
}
public static function callable2String( $callable ) {
if ( is_array( $callable ) && count( $callable ) === 1 ) {
$callable = array_pop( $callable );
}
if ( is_string( $callable ) ) {
return $callable;
} elseif ( is_object( $callable ) ) {
return get_class( $callable ) . '->__invoke';
} elseif ( is_array( $callable ) ) {
$target = $callable[0];
$method = $callable[1];
if ( is_string( $target ) ) {
return "$target::$method";
} elseif ( is_object( $target ) ) {
$class = get_class( $target );
return "$class->$method";
} else {
return '(array)';
}
}
return '(' . var_export( $callable, true ) . ')';
}
}
|
|
|
|

|
Ick. That's PHP, right?
Bob Dole The internet is a great way to get on the net.
 2.0.82.7292 SP6a
|
|
|
|

|
Yep, PHP. Though some people consider this to be a horror on itself, that's not what I am getting at here
|
|
|
|

|
Could be worse. It could have been vb...
I wasn't, now I am, then I won't be anymore.
|
|
|
|

|
I am getting tired of silly comments about vb. Presumably by someone who has not checked out vb since vb6.
|
|
|
|

|
Apparently you missed the Joke icon. I've had to do plenty of vb and vb.net work over the years so I do not speak ignorantly on the matter.
I wasn't, now I am, then I won't be anymore.
|
|
|
|

|
Damn. I knew I had to get my eyes tested.
|
|
|
|

|
Last year I translated a whole lot of VB6 code into VB.NET 10. After the project was over he complained that most of my code was unintelligible and "I had used LINQ!"
|
|
|
|

|
Bob G Beechey wrote: I am getting tired of silly comments about vb. Presumably by someone who has not checked out vb since vb6.
I've used VB2 through VB6 and VB.Net (2002) through VB.Net 2005.
VB's mother wears army boots!
--
Harvey
|
|
|
|

|
Okay ... what are you getting at?
|
|
|
|
 |
|
|
General
News
Suggestion
Question
Bug
Answer
Joke
Rant
Admin