get item of array of objects by property value php code example

Example: php find object by property name in array of objects

/**
 * Find a value via object proprty name in a 2D array of objects.
 * We often store encoded JS objects containing custom user data.
 * This is an easy way to find specific details if you know the
 * property name.
 */
$customOptions = [
  {
  	userLabel: 'Check out my awesome label',
    userName: 'Non-Stop Code Shop'
  },
  {
    userColor: '#2680eb',
    userFont: 'comic_sans'
  }
];

function findObjectPropertyByName($propName, $arrayOfObjects)
{
  $array = array_filter($arrayOfObjects, function ($obj) use (&$propName) {
    return array_key_exists('NotificationBody', get_object_vars($obj));
  });

  if (!empty($array)) {
    return $array[0]->$propName;
  }

  return null;
}

$userFont = findObjectPropertyByName('userFont', $customOptions);

Tags:

Php Example