I have written a class that detects if cURL is available, if it is performs GET, POST, DELETE using cURL. In the cURL version I use curl_getinfo($curl, CURLINFO_HTTP_CO
Use get_headers:
<?php
$url = "http://www.example.com/";
$headers = get_headers($url);
$code = $headers[0];
?>
Edit: get_headers
requires an additional call, and is not appropriate for this scenario. Use $http_response_headers
as suggested by hakre.
Whenever you do some HTTP interaction, the special variable $http_response_header on the same scope will contain all headers (incl. the status line header) that are resulted from the last HTTP interaction.
See here for an example how to parse it and obtain the status code.