Skip to content

Instantly share code, notes, and snippets.

@scoates
Created September 30, 2014 01:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save scoates/b718813daf16a9e94ba0 to your computer and use it in GitHub Desktop.
Save scoates/b718813daf16a9e94ba0 to your computer and use it in GitHub Desktop.

WHAT?

<?php

function machine_forget(&$data) {
    $data = null;
}

$answer = 42;
var_dump((string)$answer);
machine_forget($answer);
var_dump((string)$answer);

// shhh no spoilers
eval(base64_decode('CmNsYXNzIHpvbWJpZQp7CiAgICBwcm90ZWN0ZWQgJHZhbDsKICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkdmFsKQogICAgewogICAgICAgICR0aGlzLT52YWwgPSAkdmFsOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBfX2Rlc3RydWN0KCkKICAgIHsKICAgICAgICAkdGhpcy0+dmVzc2VsID0gJHRoaXM7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIF9fdG9TdHJpbmcoKQogICAgewogICAgICAgIHJldHVybiAkdGhpcy0+dmFsOwogICAgfQp9CgokYW5zd2VyID0gbmV3IHpvbWJpZSgiNDIiKTsKJGFuc3dlci0+dmVzc2VsID0gJiRhbnN3ZXI7'));

var_dump((string)$answer);
machine_forget($answer);
var_dump((string)$answer);

// DID NOT FORGET

Ouput is:

string(2) "42"
string(0) ""
string(2) "42"
string(2) "42"
@scoates
Copy link
Author

scoates commented Sep 30, 2014

@asgrim
Copy link

asgrim commented Sep 30, 2014

Mind blown.

@harikt
Copy link

harikt commented Sep 30, 2014

awesome @scoates 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment