From: <ama...@us...> - 2003-08-05 06:19:32
|
Update of /cvsroot/binaryphp/binaryphp/functions/arrays In directory sc8-pr-cvs1:/tmp/cvs-serv4995/functions/arrays Added Files: count.cpp implode.cpp ksort.cpp Log Message: finished cleaning up the functions dir --- NEW FILE: count.cpp --- #define count(var) ((php_var) (var).keys.size()) --- NEW FILE: implode.cpp --- php_var implode(php_var delim, php_var arr) { php_var str; int i; for(i = 0; i < (arr.keys.size() - 1); ++i) { str += arr[i]; str += delim; } str += arr[i]; return str; } --- NEW FILE: ksort.cpp --- php_var ksort(php_var &arr) { php_var temp; int i = 0; for(;;) { if(i >= arr.keys.size()) return 1; if((arr.keys[i].type == PHP_STRING && arr.keys[i+1].type == PHP_STRING && (arr.keys[i].container.compare(arr.keys[i+1].container)) > 0) || (arr.keys[i].type == PHP_STRING && arr.keys[i+1].type == PHP_INT) || (arr.keys[i].type == PHP_INT && arr.keys[i+1].type == PHP_INT && arr.keys[i] > arr.keys[i+1])) { temp = arr.keys[i]; arr.keys[i] = arr.keys[i+1]; arr.keys[i+1] = temp; temp = arr.data[i]; arr.data[i] = arr.data[i+1]; arr.data[i+1] = temp; if(i > 0) --i; else ++i; } else ++i; } } |