diff --git a/src/Formatter.php b/src/Formatter.php index 4829d26b..63bcf127 100644 --- a/src/Formatter.php +++ b/src/Formatter.php @@ -196,7 +196,13 @@ function ( $a, $b ) use ( $order, $orderby ) { $values[ $i ] = round( $value_num, 4 ) . 's'; } } - $table->addRow( $values ); + $row = array_map( + function ( $val ) { + return is_scalar( $val ) ? (string) $val : ''; + }, + $values + ); + $table->addRow( $row ); } if ( $include_total ) { foreach ( $totals as $i => $value ) { @@ -221,7 +227,13 @@ function ( $val ) { } } } - $table->setFooters( $totals ); + $footers = array_map( + function ( $val ) { + return is_scalar( $val ) ? (string) $val : ''; + }, + $totals + ); + $table->setFooters( $footers ); } foreach ( $table->getDisplayLines() as $line ) { diff --git a/src/Profiler.php b/src/Profiler.php index 41a39831..f4a3d7fe 100644 --- a/src/Profiler.php +++ b/src/Profiler.php @@ -632,7 +632,7 @@ private static function get_name_location_from_callback( $callback ) { $name = get_class( $callback[0] ) . '->' . $callback[1] . '()'; } elseif ( is_array( $callback ) && isset( $callback[0] ) && isset( $callback[1] ) && ( is_object( $callback[0] ) || is_string( $callback[0] ) ) && is_string( $callback[1] ) && method_exists( $callback[0], $callback[1] ) ) { $reflection = new \ReflectionMethod( $callback[0], $callback[1] ); - $class_name = $callback[0]; + $class_name = is_object( $callback[0] ) ? get_class( $callback[0] ) : $callback[0]; $name = $class_name . '::' . $callback[1] . '()'; } elseif ( is_object( $callback ) && is_a( $callback, 'Closure' ) ) { $reflection = new \ReflectionFunction( $callback );