/example/doctrine2.yaml.bundlenamespace.php

https://github.com/jupeter/mysql-workbench-schema-exporter · PHP · 69 lines · 23 code · 13 blank · 33 comment · 0 complexity · cb7e38c0cbc25a4697157cfd648aa849 MD5 · raw file

  1. <?php
  2. /*
  3. * The MIT License
  4. *
  5. * Copyright (c) 2010 Johannes Mueller <circus2(at)web.de>
  6. *
  7. * Permission is hereby granted, free of charge, to any person obtaining a copy
  8. * of this software and associated documentation files (the "Software"), to deal
  9. * in the Software without restriction, including without limitation the rights
  10. * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  11. * copies of the Software, and to permit persons to whom the Software is
  12. * furnished to do so, subject to the following conditions:
  13. *
  14. * The above copyright notice and this permission notice shall be included in
  15. * all copies or substantial portions of the Software.
  16. *
  17. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  18. * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  19. * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  20. * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  21. * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  22. * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  23. * THE SOFTWARE.
  24. */
  25. // show errors
  26. error_reporting(E_ALL);
  27. // lets stop the time
  28. $start = microtime(true);
  29. // enable autoloading of classes
  30. require_once('../lib/MwbExporter/Core/SplClassLoader.php');
  31. $classLoader = new SplClassLoader();
  32. $classLoader->setIncludePath('../lib');
  33. $classLoader->register();
  34. // show a simple text box with the output
  35. echo '<textarea cols="100" rows="50">';
  36. $setup = array(
  37. 'extendTableNameWithSchemaName' => true,
  38. 'bundleNamespace' => 'Bar\Quux',
  39. );
  40. // create a formatter
  41. $formatter = new \MwbExporter\Formatter\Doctrine2\Yaml\Loader($setup);
  42. // parse the mwb file
  43. $mwb = new \MwbExporter\Core\Workbench\Document('data/test.mwb', $formatter);
  44. // show the export output of the mwb file
  45. echo $mwb->display();
  46. echo "</textarea>";
  47. // save as zip file in current directory and use .yml as file endings
  48. echo "<br><br>";
  49. echo $mwb->zipExport(__DIR__, 'yml');
  50. // show some information about used memory
  51. echo "<br><br>";
  52. echo (memory_get_peak_usage(true) / 1024 / 1024) . " MB used";
  53. echo "<br>";
  54. // show the time needed to parse the mwb file
  55. $end = microtime(true);
  56. echo sprintf('%0.3f', $end-$start) . " sec needed";