执行HTTP HEAD或GET请求。

原型

wp_get_http( string $url, string|bool $file_path = false, int $red = 1 )

描述

如果$ file_path是可写文件名,这将执行GET请求并将文件写入该路径。

参考:

  • WP_Http

参数

$url (string) (Required) 要获取的网址。

$file_path (string|bool) (Optional)  写入请求的文件路径。

$red (int) (Optional)  随后重定向的数量,在被击中时,返回false。

返回值

(bool|string)  如果HEAD请求,则失败时出现错误和标题字符串。

源文件

路径:wp-includes/deprecated.php

<?php
...
function wp_get_http( $url, $file_path = false, $red = 1 ) {
	_deprecated_function( __FUNCTION__, '4.4.0', 'WP_Http' );
	@set_time_limit( 60 );
	if ( $red > 5 )
		return false;
	$options = array();
	$options['redirection'] = 5;
	if ( false == $file_path )
		$options['method'] = 'HEAD';
	else
		$options['method'] = 'GET';
	$response = wp_safe_remote_request( $url, $options );
	if ( is_wp_error( $response ) )
		return false;
	$headers = wp_remote_retrieve_headers( $response );
	$headers['response'] = wp_remote_retrieve_response_code( $response );
	// WP_HTTP no longer follows redirects for HEAD requests.
	if ( 'HEAD' == $options['method'] && in_array($headers['response'], array(301, 302)) && isset( $headers['location'] ) ) {
		return wp_get_http( $headers['location'], $file_path, ++$red );
	}
	if ( false == $file_path )
		return $headers;
	// GET request - write it to the supplied filename
	$out_fp = fopen($file_path, 'w');
	if ( !$out_fp )
		return $headers;
	fwrite( $out_fp,  wp_remote_retrieve_body( $response ) );
	fclose($out_fp);
	clearstatcache();
	return $headers;
}
...
?>

其他

英文文档:https://developer.wordpress.org/reference/functions/wp_get_http/