PHP multipart formulaire de données sur demande?

Je suis en train d'écrire une API RESTful. Je vais avoir des problèmes avec le téléchargement d'images à l'aide de différents verbes.

Considérer:

J'ai un objet qui peut être créés/modifiés/supprimés/consulté par l'intermédiaire d'un post/put/delete/requête get sur une URL. La demande est partie multi forment lorsqu'il y a un fichier à charger, ou de l'application/xml quand il y a juste le texte à traiter.

Pour manipuler les images téléchargés qui sont associés à l'objet que je suis en train de faire quelque chose comme:

    if(isset($_FILES['userfile'])) {
        $data = $this->image_model->upload_image();
        if($data['error']){
            $this->response(array('error' => $error['error']));
        }
        $xml_data = (array)simplexml_load_string( urldecode($_POST['xml']) );           
        $object = (array)$xml_data['object'];
    } else {
        $object = $this->body('object');
    }

Le problème majeur ici est lorsque vous essayez de gérer une demande, évidemment, $_POST ne contient pas de mettre les données (autant que je peux dire!).

Pour la référence c'est la façon dont je suis en train de construire la requête:

curl -F userfile=@./image.png -F xml="<xml><object>stuff to edit</object></xml>" 
  http://example.com/object -X PUT

Quelqu'un a une idée comment je peux accéder à la xml variable dans ma requête PUT?

InformationsquelleAutor Josh | 2012-02-27