Programmatically get a list of all fields? How to retrieve a list of fields, similar to what is available at admin/reports/fields, but so that I can have them in an array that I can stuff in a select dropdown.
You should use field_info_fields(), which returns an array containing information about all the defined fields. Its output is similar to the following one.