func($name1) should return name1
Is it possible?
Here's a function that does it.
function var_name (&$iVar, &$aDefinedVars)
{
    foreach ($aDefinedVars as $k=>$v)
        $aDefinedVars_0[$k] = $v;
    $iVarSave = $iVar;
    $iVar     =!$iVar;
    $aDiffKeys = array_keys (array_diff_assoc ($aDefinedVars_0, $aDefinedVars));
    $iVar      = $iVarSave;
    return $aDiffKeys[0];
}
Call it like this
$test = "blah";
echo var_name($test,  get_defined_vars());
That will print out "test".
I originally found that function over here You can also do it by iterating over the array returned by get_defined_vars(). That might be a bit easier to understand.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With