コード例 #1
0
ファイル: view_show.php プロジェクト: lynncyr/rrrewind
        break;
    case 'itunes':
        //ok
        show_duo($items, $site, $y, $m, $d);
        break;
    case 'wearehunted':
        //ok
        show_duo($items, $site, $y, $m, $d);
        break;
    case 'twitter':
        //ok
        show_duo($items, $site, $y, $m, $d);
        break;
    case 'wordpress':
        //ok
        show_lines($items, $site, $y, $m, $d);
        break;
}
/*

//For XML
if ( $domains[$site]['type'] == 'xml' )
{				
	$file_content = file_get_contents($feedUrl);
	if($file_content)
	{
		$xml = simplexml_load_string($file_content, null, LIBXML_NOCDATA);
		if($xml !== false)
		{						
			show_site ( $site, $xml, $item_number );												
		}
コード例 #2
0
ファイル: lint_php_lib.php プロジェクト: pceres/lint_php
function lint($text, $verbosity)
{
    /*
    input:
      $text		: text to analyse
      $verbosity	: [0,1,2] debug level (0 no debug info, 2 max verbosity
    
    es.:
    result = lint($text,0);
    
    cyclomatic complexity increase for each token:
    if        : number of logical conditions (es. if ($a && $b) {}  determines an increment of two)
    elseif    : number of logical conditions
    else      : 0
    
    case      : 1
    default   : 1
    
    while     : number of logical conditions
    
    for       : 1
    foreach   : 1
    
    try       : 1
    */
    // configurations
    $only_code = 0;
    // [0,1] 0 -> also show line numbers
    $max_lines = 10000;
    // max number of lines to show
    $parameters = array();
    $parameters['list_begin_end_tokens'] = array('if', 'else', 'elseif', 'try', 'catch', 'while', 'do', 'for', 'foreach');
    $parameters['list_mid_tokens'] = array('else', 'elseif', 'catch');
    // check input
    if (empty($text)) {
        die('Insert some text!');
    }
    if (!in_array($verbosity, range(0, 2))) {
        stampa('0: no debug info');
        stampa('1: show some debug info');
        stampa('2: show all debug info');
        stampa(' ');
        die('Wrong value for "verbosity"!');
    }
    // parse input (treat the text as one file)
    $list_files = array($text);
    // iterate for each file
    $list_result = array();
    for ($i_file = 0; $i_file < count($list_files); $i_file++) {
        $text = $list_files[$i_file];
        // just print file content
        if ($verbosity) {
            stampa(sprintf('%3d)', $i_file));
        }
        if ($verbosity) {
            stampa(sprintf('Text Reading...'));
        }
        $temp_result = read_phptext($text);
        $list_lines_in = $temp_result[0];
        $list_numlines_in = $temp_result[1];
        if ($verbosity >= 2) {
            show_lines($list_lines_in, $list_numlines_in, array_fill(0, count($list_numlines_in), 0), $only_code, $max_lines);
        }
        // all text but php code is filtered out:
        //
        // 	$a=1; /* comment1 */ echo($a) // comment 2
        // becomes
        // 	$a=1;
        // 	echo($a)
        //
        if ($verbosity) {
            stampa('Code Filtering...');
        }
        $temp_result = filter_text($list_lines_in, $list_numlines_in);
        $list_lines_code = $temp_result[0];
        $list_numlines_code = $temp_result[1];
        if ($verbosity >= 2) {
            show_lines($list_lines_code, $list_numlines_code, array_fill(0, count($list_numlines_code), 0), $only_code, $max_lines);
        }
        // every line is split into separate tokens (the separator is ";"):
        //
        // 	$a=1;echo($a)
        // becomes
        // 	$a=1;
        // 	echo($a)
        //
        if ($verbosity) {
            stampa('Code Splitting...');
        }
        $temp_result = parse_mfile($list_lines_code, $list_numlines_code, $parameters['list_begin_end_tokens']);
        $list_lines_split = $temp_result[0];
        $list_numlines_split = $temp_result[1];
        if ($verbosity >= 2) {
            show_lines($list_lines_split, $list_numlines_split, array_fill(0, count($list_numlines_split), 0), $only_code, $max_lines);
        }
        // each line is reassembled, trying to have one instruction for each line, without blank spaces, and no
        // simple instructions (for example: if (true) disp('true') --> if (true) {disp('true')})
        if ($verbosity) {
            stampa('Code Reassembling...');
        }
        $temp_result = reassemble_mfile($list_lines_split, $list_numlines_split, $parameters);
        $list_lines_out = $temp_result[0];
        $list_numlines_out = $temp_result[1];
        if ($verbosity >= 2) {
            show_lines($list_lines_out, $list_numlines_out, array_fill(0, count($list_numlines_out)), $only_code, $max_lines);
        }
        if ($verbosity) {
            stampa('Code Indenting...');
        }
        $temp_result = indent_mfile($list_lines_out, $list_numlines_out);
        $list_indent_out = $temp_result[0];
        $lista_functions = $temp_result[1];
        $lista_function_names = $temp_result[2];
        $list_lines_out = $temp_result[3];
        $indent_mccount = $temp_result[4];
        $temp_result = check_unused_functions($lista_functions, $lista_function_names);
        $lista_functions = $temp_result[0];
        $is_script = $temp_result[1];
        if ($verbosity >= 2) {
            show_lines($list_lines_out, $list_numlines_out, $list_indent_out, $only_code, $max_lines, $indent_mccount);
        }
        $res_lint = show_functions($lista_functions, $verbosity);
        $result = array();
        $result['lines_in'] = array('lines' => $list_lines_in, 'numlines' => $list_numlines_in);
        $result['lines_split'] = array('lines' => $list_lines_split, 'numlines' => $list_numlines_split);
        $result['lines_out'] = array('lines' => $list_lines_out, 'numlines' => $list_numlines_out, 'list_indent_out' => $list_indent_out, 'indent_mccount' => $indent_mccount);
        $result['lista_functions'] = $lista_functions;
        $result['res_lint'] = $res_lint;
        $list_result[$i_file] = $result;
    }
    // end for $i_file
    // end
    return $list_result;
}