Analizar una lista de atributos / valores en PHP

Dada una cadena con pares de atributo / valor como

attr1="some text" attr2 = "some other text" attr3= "some weird !@'#$\"=+ text"

el objetivo es analizarlo y generar una matriz asociativa, en este caso:

array('attr1' => 'some text',
      'attr2' => 'some other text',
      'attr3' => 'some weird !@\'#$\"=+ text')

Observe el espacio inconsistente alrededor de los signos iguales, la comilla doble escapada en la entrada y la comilla simple escapada en la salida.

Respuestas a la pregunta(2)

Su respuesta a la pregunta