PEAR е база с разширения и приложения писани на php. Състои се от структурирани пакети код, предоставени за безплатно ползване. Има изградена система за разпространение на код и поддръжка на пакети.
PHP
1676 прочитания
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | <?php function parse_args($args) { В В $out = array(); В В $last_arg = null; В В if(is_string($args)){ В В В В $args = str_replace(array('=', "\'", '\"'), array('= ', ''', '"'), $args); В В В В $args = str_getcsv($args, ' ', '"'); В В В В $tmp = array(); В В В В foreach($args as $arg){ В В В В В В if(!empty($arg) && $arg != "'" && $arg != "=" && $arg != " "){ В В В В В В В В $tmp[] = str_replace(array('= ', ''', '"'), array('=', "'", '"'), trim($arg)); В В В В В В } В В В В } В В В В $args = $tmp; В В } В В for($i = 0, $il = sizeof($args); $i < $il; $i++){ В В В В if( (bool)preg_match("/^--(.+)/", $args[$i], $match) ){ В В В В В В $parts = explode("=", $match[1]); В В В В В В $key = preg_replace("/[^a-zA-Z0-9-]+/", "", $parts[0]); В В В В В В if(isset($args[$i+1]) && substr($args[$i],0,2) == '--'){ В В В В В В В В $out[$key] = $args[$i+1]; В В В В В В В В $i++; В В В В В В }else if(isset($parts[1])){ В В В В В В В В $out[$key] = $parts[1]; В В В В В В }else{ В В В В В В В В $out[$key] = true; В В В В В В } В В В В В В В В В В В В $last_arg = $key; В В В В }else if( (bool)preg_match("/^-([a-zA-Z0-9]+)/", $args[$i], $match) ){ В В В В В В $len = strlen($match[1]); В В В В В В for( $j = 0, $jl = $len; $j < $jl; $j++ ){ В В В В В В В В $key = $match[1]{$j}; В В В В В В В В $val = ($args[$i+1]) ? $args[$i+1]: true; В В В В В В В В $out[$key] = ($match[0]{$len} == $match[1]{$j}) ? $val : true; В В В В В В } В В В В В В $last_arg = $key; В В В В }else if((bool) preg_match("/^([a-zA-Z0-9-]+)$/", $args[$i], $match) ){ В В В В В В $key = $match[0]; В В В В В В $out[$key] = true; В В В В В В $last_arg = $key; В В В В }else if($last_arg !== null) { В В В В В В $out[$last_arg] = $args[$i]; В В В В } В В } В В return $out; } $str = 'yankee -D "oo\"d l e\'s" -went "2 town 2 buy him-self" -a pony --calledit=" \"macaroonis\' "'; var_dump(parse_args($str)); /* Will output: array(9) { В ["yankee"]=> В bool(true) В ["D"]=> В string(10) "oo"d l e's" В ["w"]=> В bool(true) В ["e"]=> В bool(true) В ["n"]=> В bool(true) В ["t"]=> В string(21) "2 town 2 buy him-self" В ["a"]=> В string(4) "pony" В ["pony"]=> В bool(true) В ["calledit"]=> В string(12) ""macaroonis'" } */ |
Петя Костова, старши бизнес партньор „Човешки ресурси“ VMware за България и за регион EMEA
“ Петя Костова, старши бизнес партньор „Човешки ресурси“ VMware за България и за регион EMEA, е лице на рубриката HR of the Month („ЧР на месеца“) през февруари. Инициативата се... ” вижте още »Сертификационната програма CPIM (Certified in Production and Inventory Management) е световно...
Сертификатите по ITIL v.3 гарантират познания за жизнения цикъл на процесите за управление на ИТ...
Сертификатът CompTIA Security+ е входящо сертификационно ниво в сферата на информационната...