- print_r: documentation ( source)
- explode: documentation ( source)
<?php
class ABC
{
public static function parent($array, $keylist)
{
self::$array = $array;
self::$keylist = $keylist;
$keys = explode(",", self::$keylist);
foreach($keys as $key)
self::$array = self::recursion($key);
}
private static function recursion($key)
{
if(is_null(self::$array))
return;
foreach(self::$array as $key_outer => $value_outer)
{
if($key === $key_outer)
{
unset(self::$array[$key_outer]);
self::$array[$key_outer] = "**";
}
else
{
if(is_array($value_outer))
{
$v = self::recursion($value_outer, $key);
if(!is_null($v))
{
unset(self::$array[$key_outer]);
self::$array[$key_outer] = $v;
}
else
return;
}
}
}
}
private static $array;
private static $keylist;
}
$information = array("login" => "someUsername",
"password" => "somePassword",
"card_pin"=>"card_1234",
"pin"=>"pin_356",
"iin" => "iin_123",
"shipping" => array("value" => array("telephone" => array("inner_value" => "telephone_998"))),
"cardnumber" => "card_number_876",
"customer_id" => "customer_654",
"telephone" => "someOtherTelephoneNumber555");
$list = "telephone,login";
print_r($information);
ABC::parent($information, $list);
echo "===========\n";
print_r(ABC::$array);
This script was stopped while abusing our resources