使用网络函数和协议函数
HTTP(部分)
获取其他web页面的数据 --- 函数同文件读取函数
天气数据接口API,json xml 等数据 http://blog.csdn.net/fancylovejava/article/details/26102635
header --- 发送原生HTTP 头
gethostbyaddr --- 获取指定的IP地址对应的主机名
gethostbyname --- Get the IPv4 address corresponding to a given Internet host name
getmxrr() / dns_get_mx()--- Get MX (Mail Exchange) records
checkdnsrr --- 给指定的主机(域名)或者IP地址做DNS通信检查
URL 函数(全)
urldecode --- 解码已编码的URL 字符串
urlencode --- 编码URL 字符串
get_headers --- 取得服务器响应一个HTTP 请求所发送的所有报头
parse_url --- 解析URL,返回其组成部分
parse /pɑːz $ pɑːrs/ v.对句子作语法分析
URL: http://nobody:secret@example.com:80/script.php?variable=value#anchor Array ( [scheme] => http [host] => example.com [port] => 80 [user] => nobody [pass] => secret [path] => /script.php [query] => variable=value [fragment] => anchor )
base64_decode --- 对使用 MIME base64 编码的数据进行解码
base64_encode --- 使用 MIME base64 对数据进行编码
get_meta_tags --- 从一个文件中提取所有的 meta 标签 content 属性,返回一个数组
http_build_query --- 生成 URL-encode 之后的请求字符串
rawurldecode --- 对已编码的 URL 字符串进行解码
rawurlencode --- 按照 RFC 3986 对 URL 进行编码
FTP(部分)
ftp_connect --- 建立一个新的 FTP 连接
ftp_login --- 登录 FTP 服务器
ftp_close --- 关闭一个 FTP 连接
ftp_fput --- 上传一个已经打开的文件到服务器
ftp_fget --- 从服务器上下载一个文件并保存到本地一个已经打开的文件中
ftp_put --- 上传文件到 FTP 服务器
ftp_get --- 从 FTP 服务器上下载一个文件
bool ftp_get ( resource $ftp_stream, $local_file, $remote_file, int $mode [,int $resumepos=0] ) // 传送模式只能为 (文本模式) FTP_ASCII 或 (二进制模式) FTP_BINARY 中的其中一个
ftp_nb_continue --- 继续获取/发送文件(非阻塞传输模式)
关于非阻塞的资料:http://www.ibm.com/developerworks/cn/linux/l-async/
ftp_nb_fget --- 从服务器获取文件并写入到一个打开的文件(非阻塞)
ftp_nb_fput --- 将文件存储到服务器(非阻塞)
ftp_nb_get --- 从服务器上获取文件并写入本地文件(non-blocking)
ftp_nb_put --- 存储一个文件至服务器(non-blocking)
ftp_delete --- 删除 FTP 服务器上的一个文件
ftp_size --- 返回指定文件的大小
ftp_chmod --- 设置 FTP 服务器上的文件权限
ftp_rename --- 更改 FTP 服务器上的文件或目录名
ftp_chdir --- 在 FTP 服务器上改变当前目录
ftp_cdup --- 切换到当前目录的父目录
ftp_mkdir --- 建立新目录
ftp_rmdir --- 删除 FTP 服务器上的一个目录
$remote_file = 'somefile.txt'; $local_file = 'localfile.txt'; $handle = fopen($local_file, 'w+'); // 打开本地文件准备读写 $conn_id = ftp_connect($ftp_server); // 建立连接 ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); // 登录FTP ftp_fput($conn_id, $remote_file, $handle, FTP_ASCII)); // 上传文件 ftp_fget($conn_id, $handle, $remote_file, FTP_ASCII, 0)); // 下载文件 ftp_get($conn_id, $local_file, $server_file, FTP_BINARY); // ftp_delete($conn_id, $remote_file)); ftp_close($conn_id); // 关闭FTP连接 fclose($handle); // 关闭本地句柄
mail --- 发送一封电子邮件
bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )
$to = 'nobody@example.com'; $subject = 'the subject'; $message = 'hello'; $headers = 'From: webmaster@e100.com' . "\r\n" . 'Reply-To: webmaster@e110.com' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail($to, $subject, $message, $headers);
测试了下,可以使用任意地址给对方发信件,想起了lemon的事件......不过被qq判定为垃圾邮件,现在外贸沟通也方便了,也许哪天有空再研究下邮件安全吧