A very common complaint about our documentation is that there is no single comprehensive list of builtin functions and their parameters. I would like to use this thread to build that documentation.

Below is a list of all of the builtin functions we distribute with Miva Merchant Empresa v5.07a1, grouped by library. I'd be happy to answer any questions about specific functions, so please ask if you want more information.

archive.so:
Code:
 tar_directory( file, location, desc var )
 tar_extract( file, file_loc, dir, dir_loc )
 tar_create( file, file_loc, dir, dir_loc, flags )
 wget( url, filepath, location )
 wdownload( url, filepath, location, callback, data var )
 xml_parse( filepath, location, output var )
 xml_parse_section_init( filepath, location, level )
 xml_parse_section( output var, eof var )
 xml_parse_section_getstate( target var )
 xml_parse_section_setstate( source var )
 xml_parse_error( lineno var, error var )
crypto.so:
Code:
 rsa_generate_keypair( pubkey_file, privkey_file, bits, e, passphrase )
 rsa_generate_keypair_mem( pubkey var, privkey var, bits, e, passphrase )
 rsa_load_publickey( pubkey_file, rsa var )
 rsa_load_publickey_mem( pubkey, rsa var )
 rsa_load_privatekey( privkey_file, rsa var, passphrase )
 rsa_load_privatekey_mem( privkey, rsa var, passphrase )
 rsa_save_privatekey( privkey_file, rsa var, passphrase )
 rsa_save_privatekey_mem( privkey var, rsa var, passphrase )
 rsa_public_encrypt( rsa, plaintext, encrypted var )
 rsa_public_decrypt( rsa, encrypted, plaintext var )
 rsa_private_encrypt( rsa, plaintext, encrypted var )
 rsa_private_decrypt( rsa, encrypted, plaintext var )
 rsa_sign( rsa, buffer, signature var )
 rsa_verify( rsa, buffer, signature )
 rsa_free( rsa var )
 x509_load( cert, x509 var )
 x509_create( cert, x509 var )
 x509_verify( x509 var, trusted_certs )
 x509_rsa_publickey( x509 var, rsa var )
 x509_free( rsa var )
 crypto_rand_bytes( n )
 crypto_base64_encode( data )
 crypto_base64_decode( data )
 bf_encrypt( key, plaintext, encrypted var )
 bf_decrypt( key, encrypted, plaintext var )
 crypto_md5( buffer )
 crypto_md5_file( file, location, hash var )
 crypto_last_error()
 crypto_last_ssl_error()
 crypto_sha1( buffer var, format, result var )
 crypto_hmac_sha1( buffer var, key, format, result var )
 crypto_library_version( info )
file.so:
Code:
 fexists( path )
 fmkdir( path )
 fdelete( path )
 fcopy( source, destination )
 frename( source, destination )
 fchmod( path, mode )
 fsize( path )
 fmode( path )
 fsymlink( source, destination )
 ftime( path )
 fisdir( path )
 sexists( path )
 smkdir( path )
 sdelete( path )
 scopy( source, destination )
 srename( source, destination )
 schmod( path, mode )
 ssize( path )
 smode( path )
 ssymlink( source, destination )
 stime( path )
 sisdir( path )
 sfcopy( source, destination )
 fscopy( source, destination )
 sfrename( source, destination )
 fsrename( source, destination )
 dir( path, location, entries var )
 file_read( path, location, data var )
 file_create( path, location, data var )
 file_append( path, location, data var )
 miva_lockfile( path, location )
math.so:
Code:
 abs( number )
 acos( number )
 asin( number )
 atan( number )
 atan2( x, y )
 ceil( number )
 cos( number )
 cosh( number )
 exp( number )
 floor( number )
 fmod( x, y )
 int( number )
 log( number )
 log10( number )
 power( number, matissa )
 rnd( value, precision )
 random( max )
 sin( number )
 sinh( number )
 sqrt( number )
 tan( number )
 tanh( number )
string.so:
Code:
 rtrim( string )
 ltrim( string )
 trim( string )
 isspace( string )
 isalpha( string )
 isupper( string )
 islower( string )
 isdigit( string )
 isxdigit( string )
 isalnum( string )
 ispunct( string )
 isgraph( string )
 iscntrl( string )
 isascii( string )
 isprint( string )
 asciivalue( ascii )
 asciichar( string )
 substring( string, position, length )
 toupper( string )
 tolower( string )
 len( string )
 padl( string, length, character )
 padr( string, length, character )
 gettoken( string, sep, position )
 glosub( string, search, replace )
 glosub_array( string, search, replace )
 tokenize( string, variables )
 keyword_extract( string, keywords var )
 keyword_in( keywords var, string )
 keyword_extract_merge_init()
 keyword_extract_merge( string, weight )
 keyword_extract_merge_results( keywords var )
system.so:
Code:
 encodeattribute( attribute )
 decodeattribute( attribute )
 encodeentities( string )
 decodeentities( string )
 makesessionid()
 miva_array_elements( aggregate var )
 miva_array_max( aggregate var )
 miva_array_collapse( aggregate var )
 miva_array_sort( aggregate var )
 miva_array_serialize( aggregate var )
 miva_array_deserialize( string )
 miva_variable_value( string )
 miva_getvarlist( scope )
 miva_setlanguage( language )
 miva_setdefaultlanguage( language )
 miva_setdefaultdatabase( database )
 miva_output_header( header, value )
 miva_output_flush()
 miva_element_exists( var var, index )
 miva_member_exists( var var, member )
template.so:
Code:
 miva_template_compile( signat, source var, sourceitems var, target, errors var )
time.so:
Code:
 time_t_year( timet, time_zone )
 time_t_month( timet, time_zone )
 time_t_dayofweek( timet, time_zone )
 time_t_hour( timet, time_zone )
 time_t_min( timet, time_zone )
 time_t_sec( timet, time_zone )
 time_t_dayofmonth( timet, time_zone )
 time_t_dayofyear( timet, time_zone )
 timezone()
 mktime_t( year, month, dayofmonth, hours, minutes, seconds, timezone )