'."\n"; ?>
Kalkulator
text
0) return 0.01; else if ($in < 0) return -0.01; else return $out; } function alg_math ($in, $out) { return $out; } function alg_plus ($in, $out) { if ($in > 0) return 0.01; return $out; } function alg_minus ($in, $out) { if ($in < 0) return -0.01; return $out; } /**********/ function testcase ($input, $kursWymiany, $direction, $alg) { $handle = @fopen ($input, 'r'); if ($handle) { if (!feof ($handle)) { $line1 = fgets ($handle); $line2 = fgets ($handle); echo trim ($line1)."\n"; echo trim ($line2)."\n"; $kursWymiany = str_replace (',', '.', trim (substr ($line1, 5, 8))); $alg = strtolower (trim (substr ($line1, 17, 7))); $direction = strtolower (trim (substr ($line1, 28, 3))); if ($direction == 'skk') $direction = 'SKK2EUR'; else $direction = 'EUR2SKK'; } while (!feof ($handle)) { $line = fgets ($handle); $in = substr ($line, 3, 18); if (!empty ($in)) { echo "IN:$in OUT:". str_pad (compute ($in, $kursWymiany, $direction, $alg), 18, ' ', STR_PAD_LEFT)."\n"; } else { echo $in; } } fclose ($handle); } else echo "Can't read file $input\n"; } /**********/ function loadXMLConfig () { global $CONF; if (!isset ($CONF['dpc.xmlconfig'])) return; if (!isset ($CONF['dpc.url.images'])) $CONF['dpc.url.images'] = 'images'; if (!isset ($CONF['dpc.url.css'])) $CONF['dpc.url.css'] = 'layout'; $xml_parser = xml_parser_create (); xml_set_element_handler ($xml_parser, 'startElement', 'endElement'); xml_set_character_data_handler ($xml_parser, 'characterData'); if (!($fp = fopen ($CONF['dpc.xmlconfig'], 'r'))) { error_log ("Could not open XML input: ".$CONF['dpc.xmlconfig']); } while ($data = fread ($fp, 4096)) { if (!xml_parse ($xml_parser, $data, feof ($fp))) { error_log (sprintf ("XML error: %s at line %d", xml_error_string(xml_get_error_code ($xml_parser)), xml_get_current_line_number ($xml_parser))); } } xml_parser_free ($xml_parser); } $xml_state = ''; function startElement ($parser, $name, $attrs) { global $xml_state; $xml_state = $name; } function endElement ($parser, $name) { global $xml_state; $xml_state = ''; } function characterData ($parser, $data) { global $CONF, $xml_state; switch ($xml_state) { case 'ENABLED': if (strtolower (trim ($data)) == 'true') $CONF['enabled'] = true; else $CONF['enabled'] = false; break; case 'DEBUG': if (strtolower (trim ($data)) == 'true') $CONF['debug'] = true; else $CONF['debug'] = false; break; case 'RATE': $CONF['rate'] = str_replace (',', '.', trim ($data)); break; case 'ALGORITHM': $CONF['algorithm'] = trim ($data); break; case 'DIRECTION': $CONF['direction'] = trim ($data); break; case 'USER-CHOICE': if (strtolower (trim ($data)) == 'true') $CONF['user-choice'] = true; else $CONF['user-choice'] = false; break; } } function toFixed ($number, $round = 2) { $tempd = $number * pow (10, $round); $tempd1 = round ($tempd); $number = $tempd1 / pow (10, $round); return $number; } function format_number ($str, $decimal_places = 2, $decimal_padding = '0') { $number = explode ('.', $str); $d = (isset ($number[1])) ? $number[1] : ''; if (strcmp (substr ($d, 0, 3), '075') == 0) $str = $number[0].'.08'; else $str = (string) toFixed ($str, $decimal_places); $number = explode ('.', $str); $number[1] = (isset ($number[1])) ? $number[1] : ''; $decimal = str_pad ($number[1], $decimal_places, $decimal_padding); return (float) $number[0].'.'.$decimal; } function setNoCache () { header ("Expires: 0"); header ("Cache-Control: no-store, max-age=0, must-revalidate"); header ("Cache-Control: post-check=0, pre-check=0", false); } function getvars ($names) { $arr = explode (',', $names); foreach ($arr as $v) { global $$v; if (empty ($$v)) if (isset ($_REQUEST[$v])) $$v = trim ($_REQUEST[$v]); } } ?>