Find key/value pairs deep inside a hash containing an arbitrary number of nested hashes and arrays

Here’s a simple recursive solution: def nested_hash_value(obj,key) if obj.respond_to?(:key?) && obj.key?(key) obj[key] elsif obj.respond_to?(:each) r = nil obj.find{ |*a| r=nested_hash_value(a.last,key) } r end end h = { foo:[1,2,[3,4],{a:{bar:42}}] } p nested_hash_value(h,:bar) #=> 42

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)