Appendix A. PHP/CURL Reference

PHP/CURL is an extremely powerful interface with a dizzying array of options. This appendix highlights only those options and features of PHP/CURL that are specifically interesting to webbot developers. The full specification of PHP/CURL is available at the PHP website.[101]

In some regards, a PHP/CURL session is similar to a PHP file I/O session. Both create a session (or file handle) to reference an external file. And in both cases, when the file transfer is complete, the session is closed. However, PHP/CURL differs from standard file I/O because it requires a series of options that define the nature of the file transfer set before the exchange takes place. These options are set individually, and the sequence in which they are defined is of no importance. As a quick example, Example A-1 shows the minimal options required to create a PHP/CURL session that will put a downloaded file into a variable.

The rest of this section details how to initiate sessions, set options, execute commands, and close sessions in PHP/CURL. We’ll also look at how PHP/CURL provides transfer status and error messages.