Conditions | 11 |
Paths | 9 |
Total Lines | 110 |
Code Lines | 27 |
Lines | 0 |
Ratio | 0 % |
Changes | 0 |
Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.
For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.
Commonly applied refactorings include:
If many parameters/temporary variables are present:
1 | <?php |
||
62 | protected function fetch() { |
||
63 | if ( $this->fetched ) { |
||
64 | return; |
||
65 | } |
||
66 | |||
67 | $this->fetched = true; |
||
68 | |||
69 | $notes = array(); |
||
70 | $data = $this->log->get_data(); |
||
71 | $meta = $this->log->get_meta(); |
||
72 | |||
73 | if ( ! empty( $meta['notes'] ) ) { |
||
74 | $notes = $meta['notes']; |
||
75 | } |
||
76 | |||
77 | if ( ! empty( $data['notes'] ) && ! is_array( $data['notes'] ) ) { |
||
78 | $notes[] = array( self::KEY_CONTENT => $data['notes'] ); |
||
79 | } |
||
80 | |||
81 | if ( ! empty( $notes ) ) { |
||
82 | |||
83 | foreach ( $notes as $key => $args ) { |
||
84 | // Ensure array is formatted properly |
||
85 | $notes[ $key ] = self::parse_args_for_db( $args ); |
||
86 | } |
||
87 | |||
88 | // Make keys and values human-readable. |
||
89 | foreach ( $notes as $key => $args ) { |
||
90 | foreach ( $args as $subkey => $value ) { |
||
91 | $subkey = self::$map_keys[ $subkey ]; |
||
92 | switch ( $subkey ) { |
||
93 | case 'type': |
||
94 | $value = self::$map_types[ $value ]; |
||
95 | break; |
||
96 | |||
97 | case 'status': |
||
98 | $value = self::$map_statuses[ $value ]; |
||
99 | break; |
||
100 | } |
||
101 | $this->data[ $key ][ $subkey ] = $value; |
||
102 | } |
||
103 | } |
||
104 | } |
||
105 | |||
106 | // print( '<xmp>'. __LINE__ .') $this->data: '. print_r( $this->data, true ) .'</xmp>' ); |
||
107 | // $this->add( 'howdy' ); |
||
108 | |||
109 | // print( '<xmp>'. __LINE__ .') $this->data: '. print_r( $this->data, true ) .'</xmp>' ); |
||
110 | |||
111 | // $new_data = array( end( $this->data ) ); |
||
112 | // $new_data = $this->data; |
||
113 | // $new_data[] = array( |
||
114 | // 'content' => 'slfjsfk fs;ajfg;sj agja;gj;sag j', |
||
115 | // 'type' => 'error', |
||
116 | // 'status' => 'private', |
||
117 | // 'time' => '1478637949', |
||
118 | // ); |
||
119 | |||
120 | // $this->set( $new_data )->save(); |
||
121 | |||
122 | // wp_die( '<xmp>'. __LINE__ .') $this->data: '. print_r( $this->data, true ) .'</xmp>' ); |
||
123 | |||
124 | // $this->data[1] = array( |
||
125 | // 'content' => 'Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Nullam quis risus eget urna mollis ornare vel eu leo. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam porta sem malesuada magna mollis euismod. Cras mattis consectetur purus sit amet fermentum. |
||
126 | |||
127 | // Cras mattis consectetur purus sit amet fermentum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.', |
||
128 | // 'type' => 'error', |
||
129 | // 'status' => 'private', |
||
130 | // 'time' => '1478637949', |
||
131 | // ); |
||
132 | |||
133 | // $this->data[2] = array( |
||
134 | // 'content' => 'slfjsfk fs;ajfg;sj agja;gj;sag j', |
||
135 | // 'type' => 'error', |
||
136 | // 'status' => 'private', |
||
137 | // 'time' => '1478637949', |
||
138 | // ); |
||
139 | |||
140 | // $this->data[3] = array( |
||
141 | // 'content' => 'slfjsfk fs;ajfg;sj agja;gj;sag j', |
||
142 | // 'type' => 'error', |
||
143 | // 'status' => 'private', |
||
144 | // 'time' => '1478637949', |
||
145 | // ); |
||
146 | |||
147 | // $this->data[4] = array( |
||
148 | // 'content' => 'Donec sed odio dui. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Nullam quis risus eget urna mollis ornare vel eu leo. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. |
||
149 | |||
150 | // Curabitur blandit tempus porttitor. Maecenas sed diam eget risus varius blandit sit amet non magna. Donec id elit non mi porta gravida at eget metus. Nullam quis risus eget urna mollis ornare vel eu leo. |
||
151 | |||
152 | // Sed posuere consectetur est at lobortis. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Aenean lacinia bibendum nulla sed consectetur. Cras mattis consectetur purus sit amet fermentum. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Curabitur blandit tempus porttitor. Donec ullamcorper nulla non metus auctor fringilla. |
||
153 | |||
154 | // Nullam quis risus eget urna mollis ornare vel eu leo. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Maecenas sed diam eget risus varius blandit sit amet non magna. Donec sed odio dui. Sed posuere consectetur est at lobortis. Maecenas sed diam eget risus varius blandit sit amet non magna. Etiam porta sem malesuada magna mollis euismod.', |
||
155 | // 'type' => 'error', |
||
156 | // 'status' => 'private', |
||
157 | // 'time' => '1478637949', |
||
158 | // ); |
||
159 | |||
160 | // $this->data[5] = array( |
||
161 | // 'content' => 'slfjsfk fs;ajfg;sj agja;gj;sag j', |
||
162 | // 'type' => 'error', |
||
163 | // 'status' => 'private', |
||
164 | // 'time' => '1478637949', |
||
165 | // ); |
||
166 | |||
167 | // $this->data = array(); |
||
168 | $this->exists = ! empty( $this->data ); |
||
169 | |||
170 | return $this; |
||
171 | } |
||
172 | |||
448 |
This check looks for the generic type
array
as a return type and suggests a more specific type. This type is inferred from the actual code.