On 22 Apr 2015 10:27, "Alexander Moskalev" <ir...@irker.net> wrote: > > Thanks to all for feedback! > > Let's try to integrate new feature to old class. > We have constructor in CURLFile with one required parameter: $filename . > To avoid BC break we cannot replace this parameter. So I suggest to do it > optional and add setBuffer() method. > > So we can create CURLFile with empty parameters in constructor and fill it > with setters. > Have two more questions: > 1) If we not fill all options or fille not compatible options, when we must > throw error? ? And what level of this error? (Sorry, I'm just php coder and > know about C language and php source so little) > For file from disk(or other source) required $filename. For file from > buffer required $buffer and $postname. > 2) Curently CURLFile cannot be unserialized, because it contains $filename > (see source code). How it compatible with our dicussion? >
Why not a ctor as in: function __construct ($filename, $buffer = null) { if (isset ($ buffer)) { // use $ buffer } else { // use file contents } } The file name parameter can be of use anyway for posted file contents from buffer. Cheers, Mike