PHP memory limit, Wordpress, XML-RPC and large files

Posted January 22, 2015 4.9k views

I have a script that sends rather large MP3 files to an another server WordPress’s install via XML-RPC (using this library) from php-cli. I rapidly hit the “allowed memory size” error PHP side, which is unfortunate.

At this point, here is what I know I could do:

  • Set memory limit to a higher number via init_set() : problem is, I can’t really know for sure the maximum size of the MP3 files that are being recorded and sent to WP;

  • Set memory limit to -1 so it’s unlimited: I read pretty much everywhere over stackoverflow that I’d make a George Oscar Bluth Jr of myself, so I guess I’ll leave that option out;

So I’m left with that I see as my last resort:

It seems it’s possible to read a file line by line (honestly don’t know much about that) so it helps memory wise. How could I acheive this? Would it be compatible with IXR_Base64 to send via XML-RPC? If not, is there any other solution I could turn myself to?

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
2 answers

Reading by line would require quite a bit of rewriting of your code most likely. If you are still encountering problems I would recommend you ensure that your postmaxsize and uploadmaxfilesize variables in your /etc/php5/apache2/php.ini (on Ubuntu/apache) are set to a value large enough to support the files.

  • Yep, that was it. I was getting the error speaking of memory, and that blinded me to “memorylimit” setting. Playing with postmaxsize and uploadmax_filesize did the trick! Thanks!