As a default, PHP's file upload size limit is set pretty small. You first have to decide what size of files you are going to allow to be uploaded and if they are very big, you might want to investigate a boxed solution since it will actually involve a few different components, like a progress bar.
PHP can only do the server side precessing of the received file, which is not too hard and there should be a lot of discussion on this forum about file uploading.