mysqli_phpinfo.phpt 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. --TEST--
  2. phpinfo() mysqli section
  3. --SKIPIF--
  4. <?php
  5. require_once('skipif.inc');
  6. require_once('skipifemb.inc');
  7. require_once('skipifconnectfailure.inc');
  8. ?>
  9. --FILE--
  10. <?php
  11. include("connect.inc");
  12. @ob_clean();
  13. ob_start();
  14. phpinfo();
  15. $phpinfo = ob_get_contents();
  16. ob_end_clean();
  17. /* all versions should at least dump this minimum information */
  18. if (!stristr($phpinfo, "mysqli support"))
  19. printf("[001] ext/mysqli should have exposed itself.\n");
  20. if (!stristr($phpinfo, "client api library version"))
  21. printf("[002] ext/mysqli should have exposed the library version.\n");
  22. if (!stristr($phpinfo, "mysqli.default_host"))
  23. printf("[003] php.ini setting mysqli.default_host not shown.\n");
  24. if (!stristr($phpinfo, "mysqli.default_port"))
  25. printf("[004] php.ini setting mysqli.default_port not shown.\n");
  26. if (!stristr($phpinfo, "mysqli.default_pw"))
  27. printf("[005] php.ini setting mysqli.default_pw not shown.\n");
  28. if (!stristr($phpinfo, "mysqli.default_socket"))
  29. printf("[006] php.ini setting mysqli.default_socket not shown.\n");
  30. if (!stristr($phpinfo, "mysqli.default_user"))
  31. printf("[007] php.ini setting mysqli.default_user not shown.\n");
  32. if (!stristr($phpinfo, "mysqli.max_links"))
  33. printf("[008] php.ini setting mysqli.max_links not shown.\n");
  34. if (!stristr($phpinfo, "mysqli.reconnect"))
  35. printf("[009] php.ini setting mysqli.reconnect not shown.\n");
  36. if ($IS_MYSQLND) {
  37. $expected = array(
  38. 'mysqlnd statistics',
  39. 'bytes_sent', 'bytes_received', 'packets_sent', 'packets_received',
  40. 'protocol_overhead_in', 'protocol_overhead_out', 'result_set_queries',
  41. 'non_result_set_queries', 'no_index_used', 'bad_index_used',
  42. 'buffered_sets', 'unbuffered_sets', 'ps_buffered_sets', 'ps_unbuffered_sets',
  43. 'flushed_normal_sets', 'flushed_ps_sets', 'rows_fetched_from_server',
  44. 'rows_fetched_from_client', 'rows_skipped', 'copy_on_write_saved',
  45. 'copy_on_write_performed', 'command_buffer_too_small', 'connect_success',
  46. 'connect_failure', 'connection_reused', 'explicit_close', 'implicit_close',
  47. 'disconnect_close', 'in_middle_of_command_close', 'explicit_free_result',
  48. 'implicit_free_result', 'explicit_stmt_close', 'implicit_stmt_close',
  49. 'size',
  50. 'mysqli.allow_local_infile',
  51. 'mysqli.allow_persistent', 'mysqli.max_persistent'
  52. );
  53. foreach ($expected as $k => $entry)
  54. if (!stristr($phpinfo, $entry))
  55. printf("[010] Could not find entry for '%s'\n", $entry);
  56. }
  57. print "done!";
  58. ?>
  59. --EXPECTF--
  60. done!