Guest

Kirill Krasnov

By: a guest on Feb 1st, 2010  |  syntax: PHP  |  size: 0.83 KB  |  hits: 289  |  expires: Never
download  |  raw  |  embed  |  report abuse
Copied
  1. # Define an API inclusion function to replace require_once
  2. function require_api( $p_api_name ) {
  3.         global $g_api_included;
  4.         global $g_core_path;
  5.         if ($p_api_name != 'php_api.php'){ echo "begin<br />\n"; echo $p_api_name."<br />\n"; print_r($g_api_included); echo "end<br />\n";}
  6.         if ( !isset( $g_api_included[$p_api_name] ) ) {
  7.                 $t_existing_globals = get_defined_vars();
  8.                 require_once( $g_core_path . $p_api_name );
  9.                 $t_new_globals = array_diff_key( get_defined_vars(), $GLOBALS, array( 't_existing_globals' => 0, 't_new_globals' => 0 ) );
  10.                 foreach ( $t_new_globals as $t_global_name => $t_global_value ) {
  11.                         global $$t_global_name;
  12.                 }
  13.                 extract( $t_new_globals );
  14.                 $g_api_included[$p_api_name] = 1;
  15.                
  16.         }
  17.         else{
  18.                 echo "AHTUNG!!! <br />\n";
  19.                 echo $p_api_name."<br />\n";
  20.                 print_r($g_api_included);
  21.                 echo "<br />\n";
  22.         }
  23. }