问题


安装phpredis扩展,在PHP.ini中添加extension=redis.so后,编写Redis.php文件

<code class="language-php hljs  has-numbering"><span class="hljs-comment">// Redis.php</span>
<span class="hljs-preprocessor"><?php</span><span class="hljs-variable">$client</span> = <span class="hljs-keyword">new</span> Redis();<span class="hljs-variable">$client</span>->set(<span class="hljs-string">'key'</span>, <span class="hljs-string">'value'</span>);<span class="hljs-keyword">echo</span> <span class="hljs-variable">$client</span>->get(<span class="hljs-string">'key'</span>);....</code><ul style="opacity: 0.0587674;" class="pre-numbering"><li>1</li><li>2</li><li>3</li><li>4</li><li>5</li><li>6</li></ul><ul style="" class="pre-numbering"><li>1</li><li>2</li><li>3</li><li>4</li><li>5</li><li>6</li></ul>

使用php命令行执行Redis.php,但是确遇见一下问题

<code class="language-php hljs  has-numbering">$ php Redis.php
$ ....<span class="hljs-string">" Fatal error: Class 'Redis' not found in Redis.php"</span>...</code><ul style="opacity: 0.0587674;" class="pre-numbering"><li>1</li><li>2</li></ul><ul style="" class="pre-numbering"><li>1</li><li>2</li></ul>

但是,在浏览器中可以显示echo $client->get('key');的值,这是为什么?

解决过程


网上搜索


网上查找Fatal error: Class 'Redis' not found in Redis.php关键词。

终于在stackoverflow找到相似提问:phpredis errors Class Redis not found in Linux

仅有的一个回复,命令行和web server可能使用不同的php.ini文件

php命令行和web Server使用相同的php.ini吗?


<code class="language-php hljs  has-numbering"><span class="hljs-comment">// 去找php的doc</span>
$ man php<span class="hljs-comment">// 终于找到相关信息</span>
...
FILES/etc/php5/cli/php.iniThe configuration file <span class="hljs-keyword">for</span> the CLI version of PHP/etc/php5/cgi/php.ini.The configuration file <span class="hljs-keyword">for</span> the CGI version of PHP/etc/php5/apache2/php.ini.The configuration file <span class="hljs-keyword">for</span> the version of PHP that apache2 uses.
...</code><ul style="opacity: 0.0587674;" class="pre-numbering"><li>1</li><li>2</li><li>3</li><li>4</li><li>5</li><li>6</li><li>7</li><li>8</li><li>9</li><li>10</li><li>11</li><li>12</li><li>13</li></ul><ul style="" class="pre-numbering"><li>1</li><li>2</li><li>3</li><li>4</li><li>5</li><li>6</li><li>7</li><li>8</li><li>9</li><li>10</li><li>11</li><li>12</li><li>13</li></ul>

解决方案


修改的php.ini准确的说是/etc/php5/apache2/php.ini,因此仅web server可以使用phpredis扩展。
在/etc/php5/cli/php.ini中添加extension=redis.so后,执行$ php Redis.php,测试成功。

来源:http://blog.csdn.net/renwotao2009/article/details/46981037

在命令行下执行php程序相关推荐

  1. 命令行下执行带参数php

    命令行下执行带参数php 命令行下执行php,不走apache等通信流程,没有http协议,所有get,post传参数不起作用.按普通应用程序传参数的方法进行. 1.test.php测试文件 查看复制 ...

  2. MySQL命令行下执行.sql脚本详解

    本文主要介绍一个在MySQL命令行下执行脚本文件的例子,通过这个例子让我们来了解一下在命令行下MySQL是怎样执行脚本的吧.现在我们开始介绍这一过程. 1.首先编写sql脚本,保存为的:book.sq ...

  3. 在mysql命令行下执行sql文件

    ***********在mysql命令行下执行sql文件*********** C:\Windows\system32>cd E:\MySQL\mysql-5.7.16-winx64\bin / ...

  4. 打成jar包 在命令行下执行java工程

    将java工程打成jar包,但第三方jar包并没有包含在包中,当在命令行中运行jar包时,出现类找不到的异常, 在网上看到解决办法是将第三方jar包放到JDK的扩展类文件夹中(%JAVA_HOME%/ ...

  5. 命令行下打包Qt程序

    命令行下打包Qt程序 上一节我们说了 命令行下编译Qt程序 https://blog.csdn.net/weixin_42837024/article/details/81945656 现在基于上次继 ...

  6. Node.js 在命令行下执行Console.log()命令时,第二行会打印undefined的原因

    转载:http://blog.csdn.net/chy555chy/article 问题描述:在命令行下执行Console.log()命令后,第一行会以 "正常的白字" 输出log ...

  7. MySQL 命令行下执行.sql脚本

    1.首先编写sql脚本,保存为的:book.sql,内容如下:  1use test;  2create table book   3(   4tisbn varchar(20) primary ke ...

  8. 【开发环境】Android 命令行中执行 Java 程序 ( IntelliJ IDEA 中创建 Java / Kotlin 工程 | dx 打包 DEX 字节码文件 | dalvikvm 命令 )

    文章目录 前言 一.IntelliJ IDEA 中创建 Java / Kotlin 工程 二.准备 Java 和 Kotlin 代码 三.编译在 PC 上可执行的 Java / Kotlin JAR ...

  9. win10在命令行下运行python程序

    运行python程序之前,一定要设置好环境变量,否则无响应. 假设我们的python程序放在D盘的test文件夹下,名字为hello.py,运行方式如下: Win+R打开cmd 输入:"  ...

最新文章

  1. python读取文件中的数据为二维数组变量_Numpy 多维数据数组的实现
  2. 【转载】说说大型高并发高负载网站的系统架构
  3. Ubuntu 编译安装python3.7
  4. 乐橙本地录像回放不了_本地工具访问:安全、高效、合规的IT资源远程访问
  5. kali kda安装 linux_全昭妍미연Bea MillerWolftylaKDA-THE BADDEST
  6. Silverlight BUG
  7. linux文件备份与删除,【Linux Shell脚本编程】自动备份与删除历史备份脚本
  8. diff算法_详解虚拟 DOM 与 DOM-Diff 算法,面试官放码过来!
  9. VSLAM技术框架详述
  10. 嘉兴市计算机技工学校,嘉兴市高级技工学校2021年招生简章
  11. 截获3389远程登陆的密码
  12. FREETEXTBOX
  13. 2020最新5Sing音乐解析解析接口 简单实用
  14. windows10安装虚拟机virtualbox详细步骤
  15. 网易公开课付费视频没有加密,可以随意下载到本地
  16. 计算机l符号代表什么意思,衣服sml代表什么意思 分别是什么的标记
  17. 解决网页文字无法复制
  18. 戴尔服务器r330系统安装,Dell PowerEdge R330
  19. EXCEL----数据处理(二)----B列中包含了A列的项
  20. 解决GitHub连不上的问题fatal: unable to access ‘https://github.com/..’: Failed to connect to github.com port

热门文章

  1. Apache Sentry手动安装、使用手册
  2. lookup无序查找_学习LOOKUP 函数实现无序查询
  3. android8 通知呼吸灯_android学习笔记----解决兼容8.0以上和8.0之前版本通知栏显示、振动、LED呼吸灯闪烁问题(真机验证)...
  4. python减法怎么表示_python运算符号之一的减法怎么用,你真的学会用python的使用方法了嘛...
  5. css—盒子模型理解
  6. 嵌入式Linux上通过boa服务器实现cgi/html的web上网【转】
  7. android 开发中的常见问题
  8. Theano mnist数据集格式
  9. 从未加入域的计算机上使用Windows验证方式访问SQL Server
  10. LINUX下源码包安装mysql