首页 > php教程 > php手册 > 正文

php文件访问协议化

WBOY
发布: 2016-06-06 20:09:14
原创
1372 人浏览过

惭愧,前几天翻看 unix编程艺术 才认识到,以前经常翻看 php手册 过程中经常见到的 Supported Protocols and Wrappers 是多么让人喜爱 php的封装协议的语法仅支持 scheme://... php支持的协议有: file:// — 访问本地文件系统http:// — 访问 HTTP(s) 网址ft

惭愧,前几天翻看 unix编程艺术 才认识到,以前经常翻看 php手册过程中经常见到的 Supported Protocols and Wrappers 是多么让人喜爱

  1. php的封装协议的语法仅支持 scheme://...
  2. php支持的协议有:

    <code class="language-text">file:// — 访问本地文件系统
    http:// — 访问 HTTP(s) 网址
    ftp:// — 访问 FTP(s) URLs
    php:// — 访问各个输入/输出流(I/O streams)
    zlib:// — 压缩流
    data:// — 数据(RFC 2397)
    glob:// — 查找匹配的文件路径模式
    phar:// — PHP 归档
    ssh2:// — Secure Shell 2
    rar:// — RAR
    ogg:// — 音频流
    expect:// — 处理交互式的流
    </code>
    登录后复制
    1. 影响的函数有:

      fopen() copy() fileexists() filesize() getimagesize() filegetcontents() fileput_contents() readfile() …

    2. 注意:

      1. php://outputphp://stdoutCLI下是一模一样的即都会输出,因为他们都指向当前进程的STDOUT,但在 apachephp://stdout没有输出,原因就是:

      CLI方式,所有输出都是指向标准输出即 终端

      APACHE方式[SAPI]方式,STDOUT是终端即apache的子进程的STDOUT,而 php://output则承载HTTP进程的输出
      2. fopen("./filename.ext")fopen("/absolute_file_path/filename.ext") 可以认为是对 fopen("file://.filename.ext")fopen("file:///absolutefilepath/filename.ext")` 的简化

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!