Skip to content

Instantly share code, notes, and snippets.

Created October 24, 2015 13:25

Revisions

  1. @invalid-email-address Anonymous created this gist Oct 24, 2015.
    16 changes: 16 additions & 0 deletions drupal_run_as.php
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,16 @@
    <?php
    function drupal_run_as($user, $func, $arg1) {
    global $user;
    $original_user = $user;
    $old_state = drupal_save_session();
    drupal_save_session(FALSE);

    $args = func_get_args();

    $user = array_shift($args);
    $func = array_shift($args);
    $r = call_user_func_array($func, $args);
    $user = $original_user;
    drupal_save_session($old_state);
    return $r;
    }