I tienen dos funciones como esto:Pass todos los argumentos a otra función
function mysql_safe_query($format) {
$args = array_slice(func_get_args(),1);
$args = array_map('mysql_safe_string',$args);
$query = vsprintf($format,$args);
$result = mysql_query($query);
if($result === false) echo '<div class="mysql-error">',mysql_error(),'<br/>',$query,'</div>';
return $result;
}
function mysql_row_exists() {
$result = mysql_safe_query(func_get_args());
return mysql_num_rows($result) > 0;
}
El problema es que la segunda función no funcionará porque pasa los args al primero como una matriz, cuando espera ellos como diferentes parámetros. ¿Hay alguna forma de evitar esto, preferiblemente sin modificar mysql_safe_query
?
http://uk.php.net/func_get_args dice: "Nota: Como esta función depende del alcance actual para determinar los detalles de los parámetros, no se puede usar como un parámetro de función. Si se debe pasar este valor, los resultados debería asignarse a una variable, y esa variable debería pasarse ". – VolkerK
perfecto! @volker: no parece ser un problema en este caso. – mpen
@volker: err..nevermind. tienes razón. no se quejó la última vez, pero ahora lo es. Supongo que es mejor obedecer las advertencias. – mpen