multipart/form-data always has a boundary. That's how the MIME parts are separated.
Sanford is correct, the boundary is part of the multipart/form-data content type. The RFC is here: http://www.ietf.org/rfc/rfc2388.txt I highly recommend finding a library or framework that can handle the encoding for you as the standard is very frustrating to work with.
For the PHP, yes it works, though CURLFile is PHP 5.5=<. You need to use the old @file notation for older versions when using libcurl.