3v4l.org

run code in 300+ PHP versions simultaneously
<?php class E_View_Helper { private $form_array_source = array(); /** * Standard contructor * * @param array $a_form_array_source * - controls container, must look like: * $form['form_name1']['label'] * $form['form_name1']['form'] * $form['form_name_2']['label'] * ... */ public function __construct(&$a_form_array_source) { if( !is_array($a_form_array_source) ) return FALSE; $this->form_array_source = &$a_form_array_source; } /** * Prints formatted input for datepicker with labels * * @param string $a_form_name * - name of input * @param string $a_align * - input alignment: right, left or center */ public function input_date_form($a_form_name, $a_align = FALSE) { if( isset($this->form_array_source[$a_form_name]['form']) ) { switch( $a_align ) { case 'right': case 'center': case 'left': $a_align = 'text-' . strtolower($a_align); break; default : $a_align = ''; } ?> <label for="<?php print $a_form_name; ?>" class="<?php print $a_align; ?>"> <?php print $this->form_array_source[$a_form_name]['label'];?> <?php print $this->form_array_source[$a_form_name]['form']; ?> </label> <?php } } /** * Prints formatted group of date range inputs ("from" and "to") * * @param string $a_form_title * - title (label) above all inputs * @param string $a_from_form_name * - "from" input name * @param string $a_to_form_name * - "to" input name */ public function date_range_group($a_form_title, $a_from_form_name, $a_to_form_name) { if( isset($this->form_array_source[$a_from_form_name]['form']) or isset($this->form_array_source[$a_to_form_name]['form']) ) { ?> <div class="datepicker_container"> <?php if ($a_form_title AND isset($this->form_array_source[$a_form_title]['title'])) { ?> <label><?php print $this->form_array_source[$a_form_title]['title'];?></label> <?php } else { ?> <label>&nbsp;</label> <?php } ?> <?php print $this->input_date_form($a_from_form_name, 'right'); ?> <?php print $this->input_date_form($a_to_form_name, 'right'); ?> </div> <?php } } /** * Prints standard input form * * @param string $a_form_name * - name of input * @param string $a_label_class * - CSS class of label above input */ public function input_form($a_form_name, $a_label_class = '') { if( isset($this->form_array_source[$a_form_name]['form']) ) { $mandatory = isset($this->form_array_source[$a_form_name]['label']['mandatory']) ? ' <span class="mandatory">&lowast;</span>' : ''; ?> <label class="<?php print $a_label_class?>" for="<?php print $a_form_name; ?>"> <?php print empty($this->form_array_source[$a_form_name]['label']) ? '&nbsp;' : $this->form_array_source[$a_form_name]['label'].$mandatory;?> </label> <?php print $this->form_array_source[$a_form_name]['form']; ?> <?php } } /** * Prints inline input like checkbox/radio * * @param string $a_form_name * - name of input * @param string $a_label_class * - CSS class of label above input */ public function input_inline($a_form_name, $label_class = 'radio') { if( isset($this->form_array_source[$a_form_name]['form']) ) { $mandatory = isset($this->form_array_source[$a_form_name]['label']['mandatory']) ? ' <span class="mandatory">&lowast;</span>' : ''; ?> <label class="<?php print $label_class?>" for="<?php print $a_form_name; ?>"> <?php print $this->form_array_source[$a_form_name]['form']; ?> <?php print empty($this->form_array_source[$a_form_name]['label']) ? '&nbsp;' : $this->form_array_source[$a_form_name]['label'].$mandatory;?> </label> <?php } } } /** * Provides unified display of index pages. * Base abstract class, to be inherited * * * @author Michal K. * */ abstract class Index_View_Helper extends Printable_Section { // optional custom table printer public $table_printer = NULL; // optional custom search box printer public $search_box_printer = NULL; // optional flags public $is_add_button_printed = true; public $is_message_printed = true; public $is_flash_message_printed = true; public $is_pagination_printed = true; /** * * @param array $data_array * - data array with standard variables: title, $flash_status, $flash etc * @param string $form_array_source * array with inputs for search box * @param string $table_array_source * array with elements for index table */ public function __construct(array $data_array) { // data for access inside functions parent::__construct($data_array); $this->search = $this->data['search']; } public function render_all() { $this->print_all(); } public function print_page_header() { if( isset($this->data['title']) ) { print '<div class="page-header"><h2>' . $this->data['title'] . '</h2></div>'; } } protected function print_message() { if( $this->is_message_printed ) print '<div id="message"></div>'; } protected function print_flash_message() { if( $this->is_flash_message_printed ) { if( isset($this->data->flash) and $this->data->flash ) { print '<input type="hidden" name="' . ( isset($this->data->flash_status) ? $this->data->flash_status : '' ) . '" id="flash" value="' . $this->data->flash . '" /> '; } } } public function print_search_form() { if( $this->search_box_printer != NULL ) { $this->search_box_printer->print_all(); } else { $this->search_box_printer = new Standard_Search_Form_Printer($this->data); $this->search_box_printer->print_all(); } } public function print_pagination() { if( $this->is_pagination_printed ) { print '<div class="row">' . ( $this->is_add_button_printed ? $this->data['add'] : '' ); print '<div class="total_records span">' . $this->lang->txt('total') . ' ' . $this->data['pagination_config']['total_rows'] . '</div>'; print '<div class="records_per_page pull-right">' . $this->data['limit'] . '</div>'; print '<div class="pull-right pagination_numbers">' . $this->data['pagination'] . '</div>'; print '</div>'; } } public function print_index_table() { if( $this->table_printer != NULL ) { $this->table_printer->print_all(); } else { $this->table_printer = new Standard_Table_Printer($this->data); $this->table_printer->print_all(); } } protected function print_information() { } } abstract class HTMlElement { public $css = 0, $name = 0, $id = 0; protected $tag; public function __construct($tag) { $this->tag = $tag; } public function begin() { $attrs = $this->_attrs(); if( $attrs != '' ) { print "<$this->tag $attrs >"; } else { print "<$this->tag>"; } } public function end() { print "</$this->tag>"; } public abstract function print_all(); protected function _attrs() { $attrs = ''; if( $this->name ) $attrs .= 'name="' . $this->name . '" '; if( $this->id ) $attrs .= 'id="' . $this->id . '" '; if( $this->css ) $attrs .= 'class="' . $this->css . '" '; return $attrs; } } abstract class Printable_Section extends HTMlElement { // helper variables protected $data = array(); protected $lang = false; protected $parent = false; public function __construct(array $data, $tag = 'div') { parent::__construct($tag); $this->data = $data; $this->parent = &get_instance(); $this->lang = $this->parent->lang; } public function print_all() { $this->before_content(); $this->begin(); $this->print_section_content(); $this->end(); $this->after_content(); } public abstract function print_section_content(); protected function before_content() { } protected function after_content() { } } class Standard_Table_Printer extends Printable_Section { // indexes of columns to be printed. empty = all // must be in correct format public $table_headers = array(); // optional flags public $is_num_printed = true; // helper variables protected $table = array(); public function __construct(array $data) { parent::__construct($data, 'table'); $this->table = $data['table']; $this->id = "records"; $this->css = "table table-striped table-hover"; } public function print_section_content() { if( count($this->table['elements']) > 0 ) { if( !empty($this->table_headers) ) { $this->table['headers'] = $this->table_headers; } $this->print_table_head(); $this->print_table_body(); } else { print '<div class="alert alert-error no_records">' . $this->lang->txt('no_records') . '</div>'; } } protected function print_table_head() { print '<thead>'; $this->print_table_headers(); print '</thead>'; } protected function print_table_headers() { print '<tr class="headers">'; if( $this->is_num_printed ) { print '<th class="header_nr">' . $this->lang->txt('nr') . '</th>'; } foreach( $this->table['headers'] as $header => $value ) { if( $value ) { $selected = $sortby = ''; $selected = ( $this->table['sorting']['sort'] == $header and $sortby = $this->table['sorting']['by'] ) ? 'selected' : ''; // print '<th class="header_'.$header.' '.$selected.'"><a onClick="javascript:sortby(\''.$header.'\')">'.$value.'</a> '.$sortby.'</th>'; print '<th class="header_' . $header . ' ' . $selected . ' "><a rel="' . $header . '" class="' . $selected . ' ' . $sortby . '">' . ( $value === 1 ? $this->lang->txt($header) : $value ) . '</a></th>'; } else print '<th class="header_' . $header . '">' . $this->lang->txt($header) . '</th>'; } print '</tr>'; } protected function print_table_body() { print '<tbody>'; $this->print_table_rows(); print '</tbody>'; } protected function print_table_rows() { $nr = $this->data['pagination_config']['cur_page'] + 1; foreach( $this->table['elements'] as $element ) { $this->print_formatted_row($element, $nr); $nr++; } } protected function print_formatted_row($element, $nr) { print '<tr>'; if( $this->is_num_printed ) { print '<td class="header_nr">' . $nr . '</td>'; } foreach( $this->table['headers'] as $header => $value ) { $element_value = ''; if( isset($element->$header) ) $element_value = $element->$header; if( $header == 'datecreated' or $header == 'dateupdated' ) $element_value = ( $element_value != 0 and $element_value != 1 ) ? format_date_local($element_value) : ''; else $element_value = ( in_array($element_value, array( '0', '1' )) ) ? $this->lang->txt(set_yesno($element_value)) : $element_value; $element_value = ( $element_value ) ? $element_value : '-'; if( $header == 'options' and isset($this->table['options']['links']) and is_array($this->table['options']['links']) ) { $links = array(); foreach( $this->table['options']['links'] as $key => $val ) { $links[$key] = $val . $element->rid; } $element_value = $this->generate_buttons($links, $this->table['options']['translations']); } $selected = ''; $selected = ( $this->table['sorting']['sort'] == $header ) ? 'td_selected' : ''; print '<td class="element_' . $header . ' ' . $selected . '">' . $element_value . '</td>'; } print '</tr>'; } protected function generate_buttons($links, $translations) { return set_options($links, $translations); } } class Standard_Search_Form_Printer extends Printable_Section { // helper variables protected $search = false; public function __construct(array $data) { parent::__construct($data, 'div'); $this->search = $data['search']; $this->id = ""; $this->css = "search well"; } public function print_section_content() { print '<div class="search_options_block row">'; // form start print $this->data['search']['open']; print '<fieldset>'; $this->print_search_fields(); print '</fieldset>'; // form end print $this->data['search']['close']; print '</div>'; } protected function print_search_fields() { print $this->search['hidden']; if( $this->search['options'] ) print '<div class="search_button span"><label>&nbsp;</label>' . $this->search['options'] . '</div>'; print '<div class="control-group span">'; foreach( $this->search['elements'] as $key => $element ) { if( isset($element['form']) ) { $mandatory = isset($element['label']['mandatory']) ? '<span class="mandatory">*</span>' : ''; print '<div class="span controls"><label class="control-label" for="' . $key . '">' . $element['label'] . '</label>' . $element['form'] . '</div>'; } } print '</div>'; } } // //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /** * Provides unified display of index pages. * How to use: * * $index = new Standard_Index_Page($this->data); * $index->render_all(); * * to customize extend this class and overwrite necessary methods. For example: * * class User_Index_Page extends Standard_Index_Page { * * protected function generate_buttons($links, $translations) * { * return button_dropdown($links, $translations, 'Action'); * } * * } * or add new functionality here. * * $index = new User_Index_Page($this->data); * $index->render_all(); * * @author Michal K. * */ class Standard_Index_Page extends Index_View_Helper { public function print_section_content() { // title / header $this->print_page_header(); // page body start print '<div class="page_body">'; // message container for javascript $this->print_message(); // flash message $this->print_flash_message(); // print search form, inputs, buttons $this->print_search_form(); print '<form id="sorting_form" action="' . current_url() . '" method="post">'; print '<input type="hidden" name="sorting" id="sorting" value="" />'; // print pagination and/or add button $this->print_pagination(); // print table with selected columns. no select = all columns $this->print_index_table(); print '</form>'; // page body end print '</div>'; $this->print_information(); } } print 'FINISH';
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/nDAid
function name:  (null)
number of ops:  4
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  152     0  E >   DECLARE_CLASS                                            'index_view_helper', 'printable_section'
  617     1        DECLARE_CLASS                                            'standard_index_page', 'index_view_helper'
  658     2        ECHO                                                     'FINISH'
          3      > RETURN                                                   1

Class E_View_Helper:
Function __construct:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 4, Position 2 = 5
Branch analysis from position: 4
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 5
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/nDAid
function name:  __construct
number of ops:  8
compiled vars:  !0 = $a_form_array_source
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   17     0  E >   RECV                                             !0      
   20     1        TYPE_CHECK                                  128  ~1      !0
          2        BOOL_NOT                                         ~2      ~1
          3      > JMPZ                                                     ~2, ->5
          4    > > RETURN                                                   <false>
   22     5    >   ASSIGN_OBJ_REF                                           'form_array_source'
          6        OP_DATA                                                  !0
   24     7      > RETURN                                                   null

End of function __construct

Function input_date_form:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 6, Position 2 = 36
Branch analysis from position: 6
5 jumps found. (Code = 188) Position 1 = 14, Position 2 = 14, Position 3 = 14, Position 4 = 20, Position 5 = 7
Branch analysis from position: 14
1 jumps found. (Code = 42) Position 1 = 21
Branch analysis from position: 21
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 14
Branch analysis from position: 14
Branch analysis from position: 20
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 7
2 jumps found. (Code = 44) Position 1 = 9, Position 2 = 14
Branch analysis from position: 9
2 jumps found. (Code = 44) Position 1 = 11, Position 2 = 14
Branch analysis from position: 11
2 jumps found. (Code = 44) Position 1 = 13, Position 2 = 14
Branch analysis from position: 13
1 jumps found. (Code = 42) Position 1 = 20
Branch analysis from position: 20
Branch analysis from position: 14
Branch analysis from position: 14
Branch analysis from position: 14
Branch analysis from position: 36
filename:       /in/nDAid
function name:  input_date_form
number of ops:  37
compiled vars:  !0 = $a_form_name, !1 = $a_align
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   34     0  E >   RECV                                             !0      
          1        RECV_INIT                                        !1      <false>
   37     2        FETCH_OBJ_IS                                     ~2      'form_array_source'
          3        FETCH_DIM_IS                                     ~3      ~2, !0
          4        ISSET_ISEMPTY_DIM_OBJ                         0          ~3, 'form'
          5      > JMPZ                                                     ~4, ->36
   39     6    > > SWITCH_STRING                                            !1, [ 'right':->14, 'center':->14, 'left':->14, ], ->20
   41     7    >   IS_EQUAL                                                 !1, 'right'
          8      > JMPNZ                                                    ~5, ->14
   42     9    >   IS_EQUAL                                                 !1, 'center'
         10      > JMPNZ                                                    ~5, ->14
   43    11    >   IS_EQUAL                                                 !1, 'left'
         12      > JMPNZ                                                    ~5, ->14
         13    > > JMP                                                      ->20
   44    14    >   INIT_FCALL                                               'strtolower'
         15        SEND_VAR                                                 !1
         16        DO_ICALL                                         $6      
         17        CONCAT                                           ~7      'text-', $6
         18        ASSIGN                                                   !1, ~7
   45    19      > JMP                                                      ->21
   48    20    >   ASSIGN                                                   !1, ''
   51    21    >   ECHO                                                     '%3Clabel+for%3D%22'
         22        ECHO                                                     !0
         23        ECHO                                                     '%22%0A++class%3D%22'
   52    24        ECHO                                                     !1
         25        ECHO                                                     '%22%3E%0A++++++++++'
   53    26        FETCH_OBJ_R                                      ~10     'form_array_source'
         27        FETCH_DIM_R                                      ~11     ~10, !0
         28        FETCH_DIM_R                                      ~12     ~11, 'label'
         29        ECHO                                                     ~12
   54    30        ECHO                                                     '++++++++++'
         31        FETCH_OBJ_R                                      ~13     'form_array_source'
         32        FETCH_DIM_R                                      ~14     ~13, !0
         33        FETCH_DIM_R                                      ~15     ~14, 'form'
         34        ECHO                                                     ~15
   55    35        ECHO                                                     '++++++++%3C%2Flabel%3E%0A'
   59    36    > > RETURN                                                   null

End of function input_date_form

Function date_range_group:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 47) Position 1 = 7, Position 2 = 11
Branch analysis from position: 7
2 jumps found. (Code = 43) Position 1 = 12, Position 2 = 40
Branch analysis from position: 12
2 jumps found. (Code = 46) Position 1 = 14, Position 2 = 18
Branch analysis from position: 14
2 jumps found. (Code = 43) Position 1 = 19, Position 2 = 26
Branch analysis from position: 19
1 jumps found. (Code = 42) Position 1 = 27
Branch analysis from position: 27
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 26
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 18
Branch analysis from position: 40
Branch analysis from position: 11
filename:       /in/nDAid
function name:  date_range_group
number of ops:  41
compiled vars:  !0 = $a_form_title, !1 = $a_from_form_name, !2 = $a_to_form_name
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   71     0  E >   RECV                                             !0      
          1        RECV                                             !1      
          2        RECV                                             !2      
   74     3        FETCH_OBJ_IS                                     ~3      'form_array_source'
          4        FETCH_DIM_IS                                     ~4      ~3, !1
          5        ISSET_ISEMPTY_DIM_OBJ                         0  ~5      ~4, 'form'
          6      > JMPNZ_EX                                         ~5      ~5, ->11
          7    >   FETCH_OBJ_IS                                     ~6      'form_array_source'
          8        FETCH_DIM_IS                                     ~7      ~6, !2
          9        ISSET_ISEMPTY_DIM_OBJ                         0  ~8      ~7, 'form'
         10        BOOL                                             ~5      ~8
         11    > > JMPZ                                                     ~5, ->40
   77    12    >   ECHO                                                     '%3Cdiv+class%3D%22datepicker_container%22%3E%0A++++++++++'
   78    13      > JMPZ_EX                                          ~9      !0, ->18
         14    >   FETCH_OBJ_IS                                     ~10     'form_array_source'
         15        FETCH_DIM_IS                                     ~11     ~10, !0
         16        ISSET_ISEMPTY_DIM_OBJ                         0  ~12     ~11, 'title'
         17        BOOL                                             ~9      ~12
         18    > > JMPZ                                                     ~9, ->26
   79    19    >   ECHO                                                     '++++++++++++%3Clabel%3E'
         20        FETCH_OBJ_R                                      ~13     'form_array_source'
         21        FETCH_DIM_R                                      ~14     ~13, !0
         22        FETCH_DIM_R                                      ~15     ~14, 'title'
         23        ECHO                                                     ~15
         24        ECHO                                                     '%3C%2Flabel%3E%0A++++++++++'
         25      > JMP                                                      ->27
   81    26    >   ECHO                                                     '++++++++++++%3Clabel%3E%26nbsp%3B%3C%2Flabel%3E%0A++++++++++'
   83    27    >   ECHO                                                     '++++++++++'
         28        INIT_METHOD_CALL                                         'input_date_form'
         29        SEND_VAR_EX                                              !1
         30        SEND_VAL_EX                                              'right'
         31        DO_FCALL                                      0  $16     
         32        ECHO                                                     $16
   84    33        ECHO                                                     '++++++++++'
         34        INIT_METHOD_CALL                                         'input_date_form'
         35        SEND_VAR_EX                                              !2
         36        SEND_VAL_EX                                              'right'
         37        DO_FCALL                                      0  $17     
         38        ECHO                                                     $17
   85    39        ECHO                                                     '++++++++%3C%2Fdiv%3E%0A'
   89    40    > > RETURN                                                   null

End of function date_range_group

Function input_form:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 6, Position 2 = 38
Branch analysis from position: 6
2 jumps found. (Code = 43) Position 1 = 11, Position 2 = 13
Branch analysis from position: 11
1 jumps found. (Code = 42) Position 1 = 14
Branch analysis from position: 14
2 jumps found. (Code = 43) Position 1 = 24, Position 2 = 26
Branch analysis from position: 24
1 jumps found. (Code = 42) Position 1 = 31
Branch analysis from position: 31
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 26
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 13
2 jumps found. (Code = 43) Position 1 = 24, Position 2 = 26
Branch analysis from position: 24
Branch analysis from position: 26
Branch analysis from position: 38
filename:       /in/nDAid
function name:  input_form
number of ops:  39
compiled vars:  !0 = $a_form_name, !1 = $a_label_class, !2 = $mandatory
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   99     0  E >   RECV                                             !0      
          1        RECV_INIT                                        !1      ''
  102     2        FETCH_OBJ_IS                                     ~3      'form_array_source'
          3        FETCH_DIM_IS                                     ~4      ~3, !0
          4        ISSET_ISEMPTY_DIM_OBJ                         0          ~4, 'form'
          5      > JMPZ                                                     ~5, ->38
  104     6    >   FETCH_OBJ_IS                                     ~6      'form_array_source'
          7        FETCH_DIM_IS                                     ~7      ~6, !0
          8        FETCH_DIM_IS                                     ~8      ~7, 'label'
          9        ISSET_ISEMPTY_DIM_OBJ                         0          ~8, 'mandatory'
         10      > JMPZ                                                     ~9, ->13
         11    >   QM_ASSIGN                                        ~10     '+%3Cspan+class%3D%22mandatory%22%3E%26lowast%3B%3C%2Fspan%3E'
         12      > JMP                                                      ->14
         13    >   QM_ASSIGN                                        ~10     ''
         14    >   ASSIGN                                                   !2, ~10
  106    15        ECHO                                                     '%3Clabel+class%3D%22'
         16        ECHO                                                     !1
         17        ECHO                                                     '%22%0A++for%3D%22'
  107    18        ECHO                                                     !0
         19        ECHO                                                     '%22%3E%0A++++++++++'
  108    20        FETCH_OBJ_IS                                     ~12     'form_array_source'
         21        FETCH_DIM_IS                                     ~13     ~12, !0
         22        ISSET_ISEMPTY_DIM_OBJ                         1          ~13, 'label'
         23      > JMPZ                                                     ~14, ->26
         24    >   QM_ASSIGN                                        ~15     '%26nbsp%3B'
         25      > JMP                                                      ->31
         26    >   FETCH_OBJ_R                                      ~16     'form_array_source'
         27        FETCH_DIM_R                                      ~17     ~16, !0
         28        FETCH_DIM_R                                      ~18     ~17, 'label'
         29        CONCAT                                           ~19     ~18, !2
         30        QM_ASSIGN                                        ~15     ~19
         31    >   ECHO                                                     ~15
  109    32        ECHO                                                     '++++++++%3C%2Flabel%3E%0A'
  110    33        FETCH_OBJ_R                                      ~20     'form_array_source'
         34        FETCH_DIM_R                                      ~21     ~20, !0
         35        FETCH_DIM_R                                      ~22     ~21, 'form'
         36        ECHO                                                     ~22
  111    37        ECHO                                                     '++++++'
  114    38    > > RETURN                                                   null

End of function input_form

Function input_inline:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 6, Position 2 = 38
Branch analysis from position: 6
2 jumps found. (Code = 43) Position 1 = 11, Position 2 = 13
Branch analysis from position: 11
1 jumps found. (Code = 42) Position 1 = 14
Branch analysis from position: 14
2 jumps found. (Code = 43) Position 1 = 29, Position 2 = 31
Branch analysis from position: 29
1 jumps found. (Code = 42) Position 1 = 36
Branch analysis from position: 36
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 31
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 13
2 jumps found. (Code = 43) Position 1 = 29, Position 2 = 31
Branch analysis from position: 29
Branch analysis from position: 31
Branch analysis from position: 38
filename:       /in/nDAid
function name:  input_inline
number of ops:  39
compiled vars:  !0 = $a_form_name, !1 = $label_class, !2 = $mandatory
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  124     0  E >   RECV                                             !0      
          1        RECV_INIT                                        !1      'radio'
  127     2        FETCH_OBJ_IS                                     ~3      'form_array_source'
          3        FETCH_DIM_IS                                     ~4      ~3, !0
          4        ISSET_ISEMPTY_DIM_OBJ                         0          ~4, 'form'
          5      > JMPZ                                                     ~5, ->38
  129     6    >   FETCH_OBJ_IS                                     ~6      'form_array_source'
          7        FETCH_DIM_IS                                     ~7      ~6, !0
          8        FETCH_DIM_IS                                     ~8      ~7, 'label'
          9        ISSET_ISEMPTY_DIM_OBJ                         0          ~8, 'mandatory'
         10      > JMPZ                                                     ~9, ->13
         11    >   QM_ASSIGN                                        ~10     '+%3Cspan+class%3D%22mandatory%22%3E%26lowast%3B%3C%2Fspan%3E'
         12      > JMP                                                      ->14
         13    >   QM_ASSIGN                                        ~10     ''
         14    >   ASSIGN                                                   !2, ~10
  131    15        ECHO                                                     '%3Clabel+class%3D%22'
         16        ECHO                                                     !1
         17        ECHO                                                     '%22%0A++for%3D%22'
  132    18        ECHO                                                     !0
         19        ECHO                                                     '%22%3E%0A++++++++++'
  133    20        FETCH_OBJ_R                                      ~12     'form_array_source'
         21        FETCH_DIM_R                                      ~13     ~12, !0
         22        FETCH_DIM_R                                      ~14     ~13, 'form'
         23        ECHO                                                     ~14
  134    24        ECHO                                                     '++++++++++'
         25        FETCH_OBJ_IS                                     ~15     'form_array_source'
         26        FETCH_DIM_IS                                     ~16     ~15, !0
         27        ISSET_ISEMPTY_DIM_OBJ                         1          ~16, 'label'
         28      > JMPZ                                                     ~17, ->31
         29    >   QM_ASSIGN                                        ~18     '%26nbsp%3B'
         30      > JMP                                                      ->36
         31    >   FETCH_OBJ_R                                      ~19     'form_array_source'
         32        FETCH_DIM_R                                      ~20     ~19, !0
         33        FETCH_DIM_R                                      ~21     ~20, 'label'
         34        CONCAT                                           ~22     ~21, !2
         35        QM_ASSIGN                                        ~18     ~22
         36    >   ECHO                                                     ~18
  135    37        ECHO                                                     '++++++++%3C%2Flabel%3E%0A'
  139    38    > > RETURN                                                   null

End of function input_inline

End of class E_View_Helper.

Class Index_View_Helper:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/nDAid
function name:  __construct
number of ops:  9
compiled vars:  !0 = $data_array
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  173     0  E >   RECV                                             !0      
  176     1        INIT_STATIC_METHOD_CALL                                  
          2        SEND_VAR_EX                                              !0
          3        DO_FCALL                                      0          
  178     4        FETCH_OBJ_R                                      ~3      'data'
          5        FETCH_DIM_R                                      ~4      ~3, 'search'
          6        ASSIGN_OBJ                                               'search'
          7        OP_DATA                                                  ~4
  180     8      > RETURN                                                   null

End of function __construct

Function render_all:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/nDAid
function name:  render_all
number of ops:  3
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  185     0  E >   INIT_METHOD_CALL                                         'print_all'
          1        DO_FCALL                                      0          
  187     2      > RETURN                                                   null

End of function render_all

Function print_page_header:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 3, Position 2 = 8
Branch analysis from position: 3
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 8
filename:       /in/nDAid
function name:  print_page_header
number of ops:  9
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  192     0  E >   FETCH_OBJ_IS                                     ~0      'data'
          1        ISSET_ISEMPTY_DIM_OBJ                         0          ~0, 'title'
          2      > JMPZ                                                     ~1, ->8
  194     3    >   FETCH_OBJ_R                                      ~2      'data'
          4        FETCH_DIM_R                                      ~3      ~2, 'title'
          5        CONCAT                                           ~4      '%3Cdiv+class%3D%22page-header%22%3E%3Ch2%3E', ~3
          6        CONCAT                                           ~5      ~4, '%3C%2Fh2%3E%3C%2Fdiv%3E'
          7        ECHO                                                     ~5
  197     8    > > RETURN                                                   null

End of function print_page_header

Function print_message:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 2, Position 2 = 3
Branch analysis from position: 2
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 3
filename:       /in/nDAid
function name:  print_message
number of ops:  4
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  202     0  E >   FETCH_OBJ_R                                      ~0      'is_message_printed'
          1      > JMPZ                                                     ~0, ->3
          2    >   ECHO                                                     '%3Cdiv+id%3D%22message%22%3E%3C%2Fdiv%3E'
  204     3    > > RETURN                                                   null

End of function print_message

Function print_flash_message:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 2, Position 2 = 24
Branch analysis from position: 2
2 jumps found. (Code = 46) Position 1 = 5, Position 2 = 8
Branch analysis from position: 5
2 jumps found. (Code = 43) Position 1 = 9, Position 2 = 24
Branch analysis from position: 9
2 jumps found. (Code = 43) Position 1 = 12, Position 2 = 16
Branch analysis from position: 12
1 jumps found. (Code = 42) Position 1 = 17
Branch analysis from position: 17
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 16
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 24
Branch analysis from position: 8
Branch analysis from position: 24
filename:       /in/nDAid
function name:  print_flash_message
number of ops:  25
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  209     0  E >   FETCH_OBJ_R                                      ~0      'is_flash_message_printed'
          1      > JMPZ                                                     ~0, ->24
  211     2    >   FETCH_OBJ_IS                                     ~1      'data'
          3        ISSET_ISEMPTY_PROP_OBJ                           ~2      ~1, 'flash'
          4      > JMPZ_EX                                          ~2      ~2, ->8
          5    >   FETCH_OBJ_R                                      ~3      'data'
          6        FETCH_OBJ_R                                      ~4      ~3, 'flash'
          7        BOOL                                             ~2      ~4
          8    > > JMPZ                                                     ~2, ->24
  214     9    >   FETCH_OBJ_IS                                     ~5      'data'
         10        ISSET_ISEMPTY_PROP_OBJ                                   ~5, 'flash_status'
         11      > JMPZ                                                     ~6, ->16
         12    >   FETCH_OBJ_R                                      ~7      'data'
         13        FETCH_OBJ_R                                      ~8      ~7, 'flash_status'
         14        QM_ASSIGN                                        ~9      ~8
         15      > JMP                                                      ->17
         16    >   QM_ASSIGN                                        ~9      ''
         17    >   CONCAT                                           ~10     '%3Cinput+type%3D%22hidden%22+name%3D%22', ~9
         18        CONCAT                                           ~11     ~10, '%22+id%3D%22flash%22+value%3D%22'
         19        FETCH_OBJ_R                                      ~12     'data'
         20        FETCH_OBJ_R                                      ~13     ~12, 'flash'
         21        CONCAT                                           ~14     ~11, ~13
         22        CONCAT                                           ~15     ~14, '%22+%2F%3E+'
         23        ECHO                                                     ~15
  218    24    > > RETURN                                                   null

End of function print_flash_message

Function print_search_form:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 3, Position 2 = 7
Branch analysis from position: 3
1 jumps found. (Code = 42) Position 1 = 17
Branch analysis from position: 17
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 7
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/nDAid
function name:  print_search_form
number of ops:  18
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  223     0  E >   FETCH_OBJ_R                                      ~0      'search_box_printer'
          1        IS_NOT_EQUAL                                             ~0, null
          2      > JMPZ                                                     ~1, ->7
  225     3    >   FETCH_OBJ_R                                      ~2      'search_box_printer'
          4        INIT_METHOD_CALL                                         ~2, 'print_all'
          5        DO_FCALL                                      0          
          6      > JMP                                                      ->17
  229     7    >   NEW                                              $5      'Standard_Search_Form_Printer'
          8        CHECK_FUNC_ARG                                           
          9        FETCH_OBJ_FUNC_ARG                               $6      'data'
         10        SEND_FUNC_ARG                                            $6
         11        DO_FCALL                                      0          
         12        ASSIGN_OBJ                                               'search_box_printer'
         13        OP_DATA                                                  $5
  230    14        FETCH_OBJ_R                                      ~8      'search_box_printer'
         15        INIT_METHOD_CALL                                         ~8, 'print_all'
         16        DO_FCALL                                      0          
  233    17    > > RETURN                                                   null

End of function print_search_form

Function print_pagination:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 2, Position 2 = 34
Branch analysis from position: 2
2 jumps found. (Code = 43) Position 1 = 4, Position 2 = 8
Branch analysis from position: 4
1 jumps found. (Code = 42) Position 1 = 9
Branch analysis from position: 9
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 8
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 34
filename:       /in/nDAid
function name:  print_pagination
number of ops:  35
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  238     0  E >   FETCH_OBJ_R                                      ~0      'is_pagination_printed'
          1      > JMPZ                                                     ~0, ->34
  241     2    >   FETCH_OBJ_R                                      ~1      'is_add_button_printed'
          3      > JMPZ                                                     ~1, ->8
          4    >   FETCH_OBJ_R                                      ~2      'data'
          5        FETCH_DIM_R                                      ~3      ~2, 'add'
          6        QM_ASSIGN                                        ~4      ~3
          7      > JMP                                                      ->9
          8    >   QM_ASSIGN                                        ~4      ''
          9    >   CONCAT                                           ~5      '%3Cdiv+class%3D%22row%22%3E', ~4
         10        ECHO                                                     ~5
  242    11        FETCH_OBJ_R                                      ~6      'lang'
         12        INIT_METHOD_CALL                                         ~6, 'txt'
         13        SEND_VAL_EX                                              'total'
         14        DO_FCALL                                      0  $7      
         15        CONCAT                                           ~8      '%3Cdiv+class%3D%22total_records+span%22%3E', $7
         16        CONCAT                                           ~9      ~8, '+'
         17        FETCH_OBJ_R                                      ~10     'data'
         18        FETCH_DIM_R                                      ~11     ~10, 'pagination_config

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
153.76 ms | 1420 KiB | 15 Q