Conditions | 1 |
Paths | 1 |
Total Lines | 294 |
Code Lines | 275 |
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 |
||
255 | public function formatQueries() |
||
256 | { |
||
257 | return array( |
||
258 | 'empty' => array( |
||
259 | 'query' => '', |
||
260 | 'text' => '', |
||
261 | 'cli' => "\x1b[0m", |
||
262 | 'html' => '', |
||
263 | ), |
||
264 | 'minimal' => array( |
||
265 | 'query' => 'select 1', |
||
266 | 'text' => 'SELECT' . "\n" . |
||
267 | ' 1', |
||
268 | 'cli' => "\x1b[35mSELECT" . "\n" . |
||
269 | " \x1b[92m1" . "\x1b[0m", |
||
270 | 'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' . |
||
271 | ' <span class="sql-number">1</span>', |
||
272 | ), |
||
273 | 'simply' => array( |
||
274 | 'query' => 'select * from tbl where 1', |
||
275 | 'text' => 'SELECT' . "\n" . |
||
276 | ' *' . "\n" . |
||
277 | 'FROM' . "\n" . |
||
278 | ' tbl' . "\n" . |
||
279 | 'WHERE' . "\n" . |
||
280 | ' 1', |
||
281 | 'cli' => "\x1b[35mSELECT" . "\n" . |
||
282 | " \x1b[39m*" . "\n" . |
||
283 | "\x1b[35mFROM" . "\n" . |
||
284 | " \x1b[39mtbl" . "\n" . |
||
285 | "\x1b[35mWHERE" . "\n" . |
||
286 | " \x1b[92m1" . "\x1b[0m", |
||
287 | 'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' . |
||
288 | ' *' . '<br/>' . |
||
289 | '<span class="sql-reserved">FROM</span>' . '<br/>' . |
||
290 | ' tbl' . '<br/>' . |
||
291 | '<span class="sql-reserved">WHERE</span>' . '<br/>' . |
||
292 | ' <span class="sql-number">1</span>', |
||
293 | ), |
||
294 | 'typical' => array( |
||
295 | 'query' => 'SELECT id, if(id=1,"Si","No") from `tbl` where id = 0 or id = 1 group by id order by id desc limit 1 offset 0', |
||
296 | 'text' => 'SELECT' . "\n" . |
||
297 | ' id,' . "\n" . |
||
298 | ' IF(id = 1, "Si", "No")' . "\n" . |
||
299 | 'FROM' . "\n" . |
||
300 | ' `tbl`' . "\n" . |
||
301 | 'WHERE' . "\n" . |
||
302 | ' id = 0 OR id = 1' . "\n" . |
||
303 | 'GROUP BY' . "\n" . |
||
304 | ' id' . "\n" . |
||
305 | 'ORDER BY' . "\n" . |
||
306 | ' id' . "\n" . |
||
307 | 'DESC' . "\n" . |
||
308 | 'LIMIT 1 OFFSET 0', |
||
309 | 'cli' => "\x1b[35mSELECT" . "\n" . |
||
310 | " \x1b[39mid," . "\n" . |
||
311 | " \x1b[35mIF\x1b[39m(id = \x1b[92m1\x1b[39m, \x1b[91m\"Si\"\x1b[39m, \x1b[91m\"No\"\x1b[39m)" . "\n" . |
||
312 | "\x1b[35mFROM" . "\n" . |
||
313 | " \x1b[36m`tbl`" . "\n" . |
||
314 | "\x1b[35mWHERE" . "\n" . |
||
315 | " \x1b[39mid = \x1b[92m0 \x1b[35mOR \x1b[39mid = \x1b[92m1" . "\n" . |
||
316 | "\x1b[35mGROUP BY" . "\n" . |
||
317 | " \x1b[39mid" . "\n" . |
||
318 | "\x1b[35mORDER BY" . "\n" . |
||
319 | " \x1b[39mid" . "\n" . |
||
320 | "\x1b[35mDESC" . "\n" . |
||
321 | "LIMIT \x1b[92m1 \x1b[95mOFFSET \x1b[92m0" . "\x1b[0m", |
||
322 | 'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' . |
||
323 | ' id,' . '<br/>' . |
||
324 | ' <span class="sql-reserved">IF</span>(id = <span class="sql-number">1</span>, <span class="sql-string">"Si"</span>, <span class="sql-string">"No"</span>)' . '<br/>' . |
||
325 | '<span class="sql-reserved">FROM</span>' . '<br/>' . |
||
326 | ' <span class="sql-variable">`tbl`</span>' . '<br/>' . |
||
327 | '<span class="sql-reserved">WHERE</span>' . '<br/>' . |
||
328 | ' id = <span class="sql-number">0</span> <span class="sql-reserved">OR</span> id = <span class="sql-number">1</span>' . '<br/>' . |
||
329 | '<span class="sql-reserved">GROUP BY</span>' . '<br/>' . |
||
330 | ' id' . '<br/>' . |
||
331 | '<span class="sql-reserved">ORDER BY</span>' . '<br/>' . |
||
332 | ' id' . '<br/>' . |
||
333 | '<span class="sql-reserved">DESC</span>' . '<br/>' . |
||
334 | '<span class="sql-reserved">LIMIT</span> <span class="sql-number">1</span> <span class="sql-keyword">OFFSET</span> <span class="sql-number">0</span>', |
||
335 | ), |
||
336 | 'comments' => array( |
||
337 | 'query' => 'select /* Comment */ *' . "\n" . |
||
338 | 'from tbl # Comment' . "\n" . |
||
339 | 'where 1 -- Comment', |
||
340 | 'text' => 'SELECT' . "\n" . |
||
341 | ' /* Comment */ *' . "\n" . |
||
342 | 'FROM' . "\n" . |
||
343 | ' tbl # Comment' . "\n" . |
||
344 | 'WHERE' . "\n" . |
||
345 | ' 1 -- Comment', |
||
346 | 'cli' => "\x1b[35mSELECT" . "\n" . |
||
347 | " \x1b[37m/* Comment */ \x1b[39m*" . "\n" . |
||
348 | "\x1b[35mFROM" . "\n" . |
||
349 | " \x1b[39mtbl \x1b[37m# Comment" . "\n" . |
||
350 | "\x1b[35mWHERE" . "\n" . |
||
351 | " \x1b[92m1 \x1b[37m-- Comment" . "\x1b[0m", |
||
352 | 'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' . |
||
353 | ' <span class="sql-comment">/* Comment */</span> *' . '<br/>' . |
||
354 | '<span class="sql-reserved">FROM</span>' . '<br/>' . |
||
355 | ' tbl <span class="sql-comment"># Comment</span>' . '<br/>' . |
||
356 | '<span class="sql-reserved">WHERE</span>' . '<br/>' . |
||
357 | ' <span class="sql-number">1</span> <span class="sql-comment">-- Comment</span>', |
||
358 | ), |
||
359 | 'strip comments' => array( |
||
360 | 'query' => 'select /* Comment */ *' . "\n" . |
||
361 | 'from tbl # Comment' . "\n" . |
||
362 | 'where 1 -- Comment', |
||
363 | 'text' => 'SELECT' . "\n" . |
||
364 | ' *' . "\n" . |
||
365 | 'FROM' . "\n" . |
||
366 | ' tbl' . "\n" . |
||
367 | 'WHERE' . "\n" . |
||
368 | ' 1', |
||
369 | 'cli' => "\x1b[35mSELECT" . "\n" . |
||
370 | " \x1b[39m*" . "\n" . |
||
371 | "\x1b[35mFROM" . "\n" . |
||
372 | " \x1b[39mtbl" . "\n" . |
||
373 | "\x1b[35mWHERE" . "\n" . |
||
374 | " \x1b[92m1" . "\x1b[0m", |
||
375 | 'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' . |
||
376 | ' *' . '<br/>' . |
||
377 | '<span class="sql-reserved">FROM</span>' . '<br/>' . |
||
378 | ' tbl' . '<br/>' . |
||
379 | '<span class="sql-reserved">WHERE</span>' . '<br/>' . |
||
380 | ' <span class="sql-number">1</span>', |
||
381 | 'options' => array( |
||
382 | 'remove_comments' => true, |
||
383 | ), |
||
384 | ), |
||
385 | 'keywords' => array( |
||
386 | 'query' => 'select hex("1")', |
||
387 | 'text' => 'SELECT' . "\n" . |
||
388 | ' HEX("1")', |
||
389 | 'cli' => "\x1b[35mSELECT" . "\n" . |
||
390 | " \x1b[95mHEX\x1b[39m(\x1b[91m\"1\"\x1b[39m)" . "\x1b[0m", |
||
391 | 'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' . |
||
392 | ' <span class="sql-keyword">HEX</span>(<span class="sql-string">"1"</span>)', |
||
393 | ), |
||
394 | 'distinct count' => array( |
||
395 | 'query' => 'select distinct count(*)', |
||
396 | 'text' => 'SELECT DISTINCT' . "\n" . |
||
397 | ' COUNT(*)', |
||
398 | 'cli' => "\x1b[35mSELECT DISTINCT" . "\n" . |
||
399 | " \x1b[95mCOUNT\x1b[39m(*)" . "\x1b[0m", |
||
400 | 'html' => '<span class="sql-reserved">SELECT</span> <span class="sql-reserved">DISTINCT</span>' . '<br/>' . |
||
401 | ' <span class="sql-keyword">COUNT</span>(*)', |
||
402 | ), |
||
403 | 'create procedure' => array( |
||
404 | 'query' => 'create procedure test_procedure() begin from tbl select *; end', |
||
405 | 'text' => 'CREATE PROCEDURE test_procedure()' . "\n" . |
||
406 | 'BEGIN' . "\n" . |
||
407 | ' FROM' . "\n" . |
||
408 | ' tbl' . "\n" . |
||
409 | ' SELECT' . "\n" . |
||
410 | ' *;' . "\n" . |
||
411 | 'END', |
||
412 | 'cli' => "\x1b[35mCREATE PROCEDURE \x1b[39mtest_procedure()\n" . |
||
413 | "\x1b[95mBEGIN" . "\n" . |
||
414 | " \x1b[35mFROM" . "\n" . |
||
415 | " \x1b[39mtbl" . "\n" . |
||
416 | " \x1b[35mSELECT" . "\n" . |
||
417 | " \x1b[39m*;\n" . |
||
418 | "\x1b[95mEND" . "\x1b[0m", |
||
419 | 'html' => '<span class="sql-reserved">CREATE</span> <span class="sql-reserved">PROCEDURE</span> test_procedure()' . '<br/>' . |
||
420 | '<span class="sql-keyword">BEGIN</span>' . '<br/>' . |
||
421 | ' <span class="sql-reserved">FROM</span>' . '<br/>' . |
||
422 | ' tbl' . '<br/>' . |
||
423 | ' <span class="sql-reserved">SELECT</span>' . '<br/>' . |
||
424 | ' *;' . '<br/>' . |
||
425 | '<span class="sql-keyword">END</span>', |
||
426 | ), |
||
427 | 'insert' => array( |
||
428 | 'query' => 'insert into foo values (0, 0, 0), (1, 1, 1)', |
||
429 | 'text' => 'INSERT INTO foo' . "\n" . |
||
430 | 'VALUES(0, 0, 0),(1, 1, 1)', |
||
431 | 'cli' => "\x1b[35mINSERT INTO \x1b[39mfoo" . "\n" . |
||
432 | "\x1b[35mVALUES\x1b[39m(\x1b[92m0\x1b[39m, \x1b[92m0\x1b[39m, \x1b[92m0\x1b[39m),(\x1b[92m1\x1b[39m, \x1b[92m1\x1b[39m, \x1b[92m1\x1b[39m)" . "\x1b[0m", |
||
433 | 'html' => '<span class="sql-reserved">INSERT</span> <span class="sql-reserved">INTO</span> foo' . '<br/>' . |
||
434 | '<span class="sql-reserved">VALUES</span>(<span class="sql-number">0</span>, <span class="sql-number">0</span>, <span class="sql-number">0</span>),(<span class="sql-number">1</span>, <span class="sql-number">1</span>, <span class="sql-number">1</span>)', |
||
435 | ), |
||
436 | 'string as alias' => array( |
||
437 | 'query' => 'select "Text" as bar', |
||
438 | 'text' => 'SELECT' . "\n" . |
||
439 | ' "Text" AS bar', |
||
440 | 'cli' => "\x1b[35mSELECT" . "\n" . |
||
441 | " \x1b[91m\"Text\" \x1b[35mAS \x1b[39mbar" . "\x1b[0m", |
||
442 | 'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' . |
||
443 | ' <span class="sql-string">"Text"</span> <span class="sql-reserved">AS</span> bar', |
||
444 | ), |
||
445 | 'escape cli' => array( |
||
446 | 'query' => "select 'text\x1b[33mcolor-inj'", |
||
447 | 'text' => 'SELECT' . "\n" . |
||
448 | " 'text\x1B[33mcolor-inj'", |
||
449 | 'cli' => "\x1b[35mSELECT" . "\n" . |
||
450 | " \x1b[91m'text\\x1B[33mcolor-inj'" . "\x1b[0m", |
||
451 | 'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' . |
||
452 | ' <span class="sql-string">\'text' . "\x1b[33m" . 'color-inj\'</span>', |
||
453 | ), |
||
454 | 'escape html' => array( |
||
455 | 'query' => "select '<s>xss' from `<s>xss` , <s>nxss /*s<s>xss*/", |
||
456 | 'text' => 'SELECT' . "\n" . |
||
457 | ' \'<s>xss\'' . "\n" . |
||
458 | 'FROM' . "\n" . |
||
459 | ' `<s>xss`,' . "\n" . |
||
460 | ' < s > nxss /*s<s>xss*/', |
||
461 | 'cli' => "\x1b[35mSELECT" . "\n" . |
||
462 | " \x1b[91m'<s>xss'" . "\n" . |
||
463 | "\x1b[35mFROM" . "\n" . |
||
464 | " \x1b[36m`<s>xss`\x1b[39m," . "\n" . |
||
465 | " < s > nxss \x1b[37m/*s<s>xss*/" . "\x1b[0m", |
||
466 | 'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' . |
||
467 | ' <span class="sql-string">\'<s>xss\'</span>' . '<br/>' . |
||
468 | '<span class="sql-reserved">FROM</span>' . '<br/>' . |
||
469 | ' <span class="sql-variable">`<s>xss`</span>,<br/> < s > nxss <span class="sql-comment">/*s<s>xss*/</span>', |
||
470 | ), |
||
471 | 'create table' => array( |
||
472 | 'query' => 'create table if not exists `pma__bookmark` (' . "\n" . |
||
473 | '`id` int(11) not null auto_increment,' . "\n" . |
||
474 | '`dbase` varchar(255) not null default "",' . "\n" . |
||
475 | '`user` varchar(255) not null default "",' . "\n" . |
||
476 | '`label` varchar(255) collate utf8_general_ci not null default "",' . "\n" . |
||
477 | '`query` text not null,' . "\n" . |
||
478 | 'primary key (`id`)', |
||
479 | 'text' => 'CREATE TABLE IF NOT EXISTS `pma__bookmark`(' . "\n" . |
||
480 | ' `id` INT(11) NOT NULL AUTO_INCREMENT,' . "\n" . |
||
481 | ' `dbase` VARCHAR(255) NOT NULL DEFAULT "",' . "\n" . |
||
482 | ' `user` VARCHAR(255) NOT NULL DEFAULT "",' . "\n" . |
||
483 | ' `label` VARCHAR(255) COLLATE utf8_general_ci NOT NULL DEFAULT "",' . "\n" . |
||
484 | ' `query` TEXT NOT NULL,' . "\n" . |
||
485 | ' PRIMARY KEY(`id`)', |
||
486 | 'cli' => "\x1b[35mCREATE TABLE IF NOT EXISTS \x1b[36m`pma__bookmark`\x1b[39m(" . "\n" . |
||
487 | " \x1b[36m`id` \x1b[35mINT\x1b[39m(\x1b[92m11\x1b[39m) \x1b[35mNOT NULL \x1b[95mAUTO_INCREMENT\x1b[39m," . "\n" . |
||
488 | " \x1b[36m`dbase` \x1b[35mVARCHAR\x1b[39m(\x1b[92m255\x1b[39m) \x1b[35mNOT NULL DEFAULT \x1b[91m\"\"\x1b[39m," . "\n" . |
||
489 | " \x1b[36m`user` \x1b[35mVARCHAR\x1b[39m(\x1b[92m255\x1b[39m) \x1b[35mNOT NULL DEFAULT \x1b[91m\"\"\x1b[39m," . "\n" . |
||
490 | " \x1b[36m`label` \x1b[35mVARCHAR\x1b[39m(\x1b[92m255\x1b[39m) \x1b[35mCOLLATE \x1b[39mutf8_general_ci \x1b[35mNOT NULL DEFAULT \x1b[91m\"\"\x1b[39m," . "\n" . |
||
491 | " \x1b[36m`query` \x1b[95mTEXT \x1b[35mNOT NULL\x1b[39m," . "\n" . |
||
492 | " \x1b[35mPRIMARY KEY\x1b[39m(\x1b[36m`id`\x1b[39m)" . "\x1b[0m", |
||
493 | 'html' => '<span class="sql-reserved">CREATE</span> <span class="sql-reserved">TABLE</span> <span class="sql-reserved">IF NOT EXISTS</span> <span class="sql-variable">`pma__bookmark`</span>(' . '<br/>' . |
||
494 | ' <span class="sql-variable">`id`</span> <span class="sql-reserved">INT</span>(<span class="sql-number">11</span>) <span class="sql-reserved">NOT NULL</span> <span class="sql-keyword">AUTO_INCREMENT</span>,' . '<br/>' . |
||
495 | ' <span class="sql-variable">`dbase`</span> <span class="sql-reserved">VARCHAR</span>(<span class="sql-number">255</span>) <span class="sql-reserved">NOT NULL</span> <span class="sql-reserved">DEFAULT</span> <span class="sql-string">""</span>,' . '<br/>' . |
||
496 | ' <span class="sql-variable">`user`</span> <span class="sql-reserved">VARCHAR</span>(<span class="sql-number">255</span>) <span class="sql-reserved">NOT NULL</span> <span class="sql-reserved">DEFAULT</span> <span class="sql-string">""</span>,' . '<br/>' . |
||
497 | ' <span class="sql-variable">`label`</span> <span class="sql-reserved">VARCHAR</span>(<span class="sql-number">255</span>) <span class="sql-reserved">COLLATE</span> utf8_general_ci <span class="sql-reserved">NOT NULL</span> <span class="sql-reserved">DEFAULT</span> <span class="sql-string">""</span>,' . '<br/>' . |
||
498 | ' <span class="sql-variable">`query`</span> <span class="sql-keyword">TEXT</span> <span class="sql-reserved">NOT NULL</span>,' . '<br/>' . |
||
499 | ' <span class="sql-reserved">PRIMARY KEY</span>(<span class="sql-variable">`id`</span>)', |
||
500 | ), |
||
501 | 'join' => array( |
||
502 | 'query' => 'join tbl2 on c1=c2', |
||
503 | 'text' => 'JOIN tbl2 ON c1 = c2', |
||
504 | 'cli' => "\x1b[35mJOIN \x1b[39mtbl2 \x1b[35mON \x1b[39mc1 = c2" . |
||
505 | "\x1b[0m", |
||
506 | 'html' => '<span class="sql-reserved">JOIN</span> tbl2 <span class="sql-reserved">ON</span> c1 = c2', |
||
507 | ), |
||
508 | 'named param' => array( |
||
509 | 'query' => 'select * from tbl where col = :param', |
||
510 | 'text' => 'SELECT' . "\n" . |
||
511 | ' *' . "\n" . |
||
512 | 'FROM' . "\n" . |
||
513 | ' tbl' . "\n" . |
||
514 | 'WHERE' . "\n" . |
||
515 | ' col = :param', |
||
516 | 'cli' => "\x1b[35mSELECT" . "\n" . |
||
517 | " \x1b[39m*" . "\n" . |
||
518 | "\x1b[35mFROM" . "\n" . |
||
519 | " \x1b[39mtbl" . "\n" . |
||
520 | "\x1b[35mWHERE" . "\n" . |
||
521 | " \x1b[39mcol = \x1b[31m:param" . "\x1b[0m", |
||
522 | 'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' . |
||
523 | ' *' . '<br/>' . |
||
524 | '<span class="sql-reserved">FROM</span>' . '<br/>' . |
||
525 | ' tbl' . '<br/>' . |
||
526 | '<span class="sql-reserved">WHERE</span>' . '<br/>' . |
||
527 | ' col = <span class="sql-parameter">:param</span>', |
||
528 | ), |
||
529 | 'anon param' => array( |
||
530 | 'query' => 'select * from tbl where col = ?', |
||
531 | 'text' => 'SELECT' . "\n" . |
||
532 | ' *' . "\n" . |
||
533 | 'FROM' . "\n" . |
||
534 | ' tbl' . "\n" . |
||
535 | 'WHERE' . "\n" . |
||
536 | ' col = ?', |
||
537 | 'cli' => "\x1b[35mSELECT" . "\n" . |
||
538 | " \x1b[39m*" . "\n" . |
||
539 | "\x1b[35mFROM" . "\n" . |
||
540 | " \x1b[39mtbl" . "\n" . |
||
541 | "\x1b[35mWHERE" . "\n" . |
||
542 | " \x1b[39mcol = \x1b[31m?" . "\x1b[0m", |
||
543 | 'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' . |
||
544 | ' *' . '<br/>' . |
||
545 | '<span class="sql-reserved">FROM</span>' . '<br/>' . |
||
546 | ' tbl' . '<br/>' . |
||
547 | '<span class="sql-reserved">WHERE</span>' . '<br/>' . |
||
548 | ' col = <span class="sql-parameter">?</span>', |
||
549 | ) |
||
553 |