首先一个问题:在命令行下执行:php -r 'echo 12;'

控制台会打印出 12;

这个过程不是很奇妙么,我输入的是shell命令,但是执行的却是php脚本。php脚本执行完成之后的输出还能在控制台输出。

那在这个shell命令(控制台命令)和php中间一定有一种接口,能将shell的参数,代码,等转换成php,然后将php的输出转换成shell的输出。这个接口就叫做SAPI(Server Application Programimg Interface)。它就相当于PHP外部环境的代理器。

那么由于PHP可以应用在终端上,也可以应用在Web服务器中,所以呢,应用在终端上的SAPI就叫做CLI SAPI,应用在Web服务器中的就叫做CGI SAPI。在windows下安装php你会看到两个exe:php.exe和php-cgi.exe这个就对应的是这两种SAPI。再比如,在控制台上使用php -v,你就会发现PHP的版本信息中有个(cli)标示,就代表你这里的php应用程序使用的是cli SAPI。

关于CLI SAPI:手册上有很详细的说明:http://php.net/manual/zh/features.commandline.php

php的SAPI,CLI SAPI,CGI SAPI相关推荐

  1. php cgi sapi

    先说说php的五大模式: 1.CGI 2.FASTCGI 3.CLI,command line interface,命令行模式 4.mod_php5,apache嵌入php模块 5.isapi php ...

  2. php sapi linux,PHP内核 - SAPI - Cli

    一.Cli 基本常识 Cli(Command Line Interface),即命令行接口,用于在命令行下执行PHP脚本,它是执行PHP脚本最简便的一种方式. Cli模式通过执行编译的PHP二进制程序 ...

  3. 转:安装PHP出现make: *** [sapi/cli/php] Error 1 解决办法

    ext/iconv/.libs/iconv.o: In function `php_iconv_stream_filter_ctor': /home/king/PHP-5.2.13/ext/iconv ...

  4. sapi cli php mac,make: *** [sapi/cli/php] Error 1 解决办法

    make: *** [sapi/cli/php] Error 1 一:考虑过make clean,问题依然 二:(采取此方法后出现启动apache报错:/usr/local/apache2/modul ...

  5. 转 安装PHP出现make: *** [sapi/cli/php] Error 1 解决办法

    ext/iconv/.libs/iconv.o: In function `php_iconv_stream_filter_ctor': /home/king/php-5.2.13/ext/iconv ...

  6. php sapi 那些坑,安装PHP出现make: *** [sapi/cli/php] Error 1 解决办法

    错误信息: /opt/lnmp+memcached/php-5.4.9/ext/xmlrpc/libxmlrpc/encodings.c:73: undefined reference to `lib ...

  7. php sapi zend,安装php出现make: *** [sapi/cli/php]

    今天在编译安装php的时候,出现了一个问题,我这种查资料,找到了几种办法,但是我试验了,是不正确的,最终我是修改了变异时候的路径,解决了问题. 我编译安装php的参数如下: ./configure - ...

  8. php cli 安装,php编辑安装:make: *** [sapi/cli/php] Error 1

    编译php的时候报错: make: *** [sapi/cli/php] Error 1 解决方法这里说两个,至于修改php的源码的方法就不说了,我不喜欢这种方法: 第一种方法: 首先得保证libxm ...

  9. php sapi全拼,php sapi

    php的SAPI,CLI SAPI,CGI SAPI 首先一个问题:在命令行下执行:php -r 'echo 12;' 控制台会打印出 12: 这个过程不是很奇妙么,我输入的是shell命令,但是执行 ...

最新文章

  1. a股历史30年的大盘价_[最新]回顾A股历史上的大井喷行情
  2. web前端技巧-ES6新特性与重点知识汇总(三)
  3. python中向量长度_python中向量指的是什么意思
  4. react native初始化项目
  5. 中运算符百分号作用_SQL基础知识——LIKE运算符
  6. yum安装ruby_centos 6.5 ruby环境安装
  7. ogg mysql表结构不一致_OGG-01163 Bad column表结构一致、trail文件meta不一致处理
  8. 【iOS】Swift3:执行save()的时候出现:Call can throw, but it is not marked with 'try' and the error is not handl
  9. php数组重置,php 重置数组索引,兼容多维数组
  10. 自己在使用的漢語辭典
  11. linux桌面图标大小,ubuntu17.10修改桌面图标大小的方法
  12. 武汉大学计算机学院 工程硕士,武汉大学计算机学院在职人员攻读工程硕士学位招生专业介绍...
  13. 深海迷航代码_?《深海迷航(Subnautica)》如何输入代码
  14. 计算机学院静态网页毕业论文,静态网页毕业论文静态网页毕业论文.doc
  15. Linux下线程(LWP)的相关概念
  16. NFS nfs4_reclaim_open_state lock reclaim failed
  17. 寒门难出贵子,AI助力教育但问题依然难解
  18. 【asp.net】MVC中cshtml页面Razor语法大全(综合实例)
  19. 十进制转为二十六进制
  20. linux重启和关闭系统命令

热门文章

  1. linux系统声卡安装教程,Linux系统下如何安装声卡驱动?
  2. Exchange日志清理
  3. 【选型】项目方案总体设计--选型
  4. Codechef之CodeCraft: IIIT Hyderabad
  5. 优化网站设计系列文章总结和导读
  6. 利用winrar自动备份重要资料
  7. Linux下openSSL安装并颁发证书
  8. 诗与远方:无题(七十八)- 望天而作
  9. java.nio.DirectByteBuffer管理堆外内存
  10. sql慢查询问题排查