hola Cluster,
no lo tengo bien claro aún, pero para el caso esta función podría utilizarse para reemplazar ORDER BY, o bien para WHEREs sin ORDERs etc, o podría usarse para hacer un reordenamiento de los datos obtenidos sin necesidad de volver a realizar la consulta; o si no incluso se podría usar en el caso de "mandar" los datos a archivos .cvs
en general la ventaja de "mandar" los registros a arrays es que después uno puede manipular los datos como quiera de necesitarlo sin reconectarse a la base, ocupando el tiempo de conexión a la base solamente lo mínimo necesario: al principio del script, una vez obtenidos los datos se cierra y no se vuelve a abrir, y se evita mezclar el sql con la "salida" de echo o de html, que también leí por ahí que no era conveniente
el ORDER BY de sql consume mucho tiempo y recursos (siempre al leer sobre performance vi que recomendaban no usar ORDER BY a menos que sea inevitable, por ejemplo:
http://www.phpbuilder.com/columns/we...09.php3?page=6), con esta función se me ocurre, así en crudo que se podría hacer una consulta SQL a la base sin ORDER BY pero luego reemplazarlo con esta función de Bvis, ordenando el array... eso mejoraría la performance de la consulta, aunque es solamente una idea
por ejemplo si tengo
SELECT * FROM chango WHERE etc ORDER BY campo2,campo1,campo3
se podría hacer solamente SELECT * FROM chango WHERE etc, una vez obtenido el array que quedaría como array bidimensional
[0]['campo1'], [0]['campo2'], [0]['campo3']
[1]['campo1'], [1]['campo2'], [1]['campo3']
etc etc
se podría llamar la funcion de BVis:
ordenar_array($array, 'campo2', SORT_DESC, 'campo1', SORT_DESC, 'campo3', SORT_DESC);
de todas maneras hacer esto sería opcional. quien quisiera usar ORDER BY podría usarlo
algunas cosas de la clase que ya 'andan'
- paginaciones de datos al mismo tiempo de hacer la consulta, con cifras de los registros y cuántos result-sets serían en total para toda la tabla de acuerdo a los LIMITs usados
- chequeo de seguridad de argumentos sql
- error handling interno y de mysql
- contar totales delimitando el campo a contar con '{}', o no de lo contrario (para consultas con LIMIT, esto contaría el total de registros a usar sin considerar el LIMIT)
- calcular tiempo de ejecucion de PHP + SQL o por separado
para ver un ejemplo de testeo de la clase
http://cinehol.com.ar/p_posters.php?navPrefix=POS
a quien le interese hay una documentación preliminar provisoria en
http://www.sci-web.com.ar/scripts/servidor/clasemysql/ (no se puede bajar todavía sino dentro de unos días)