Depending on PHP version, configuration and platform, Job::toString
would cause warnings like this if non-primitive parameters where
used in the job:
Notice: Array to string conversion in C:\xampp\htdocs\wikidata-client\includes\job\Job.php on line 245
This change takes care of providing a sane representation of
non-primitive values.
Change-Id: I00ac52d40d39d8219626f5116172950f1b7af381
if ( $paramString != '' ) {
$paramString .= ' ';
}
+
+ if ( is_array( $value ) ) {
+ $value = "array(" . count( $value ) . ")";
+ } else if ( is_object( $value ) && !method_exists( $value, '__toString' ) ) {
+ $value = "object(" . get_class( $value ) . ")";
+ }
+
$paramString .= "$key=$value";
}
}