在XAMPP for Windows中升级PHP?

在XAMPP for Windows中升级PHP?,php,windows,xampp,Php,Windows,Xampp,我想知道您是如何在Xampp for Windows中升级PHP的?我试图从主PHP站点下载最新的PHP版本,但当我检查(phpinfo)时,我仍然发现以前的版本仍在使用。我认为您需要实际下载并安装带有所需PHP版本的XAMPP。我不认为您可以单独升级XAMPP的组件,除非XAMPP本身提供了相应的功能。备份您的htdocs和数据文件夹(MySQL文件夹的子文件夹),重新安装升级版本并替换这些文件夹 注意: 如果您更改了配置文件,如PHP(PHP.ini)、Apache(httpd.conf)或

我想知道您是如何在Xampp for Windows中升级PHP的?我试图从主PHP站点下载最新的PHP版本,但当我检查(phpinfo)时,我仍然发现以前的版本仍在使用。

我认为您需要实际下载并安装带有所需PHP版本的XAMPP。我不认为您可以单独升级XAMPP的组件,除非XAMPP本身提供了相应的功能。

备份您的htdocs和数据文件夹(MySQL文件夹的子文件夹),重新安装升级版本并替换这些文件夹

注意:
如果您更改了配置文件,如PHP(PHP.ini)、Apache(httpd.conf)或任何其他文件,请同时备份这些文件,并用新安装的版本替换它们

Xampp有较新的beta版,随新的PHP升级而来


你应该在

上查看,你可以通过以下链接,因为它帮助了我,也应该对你有用

意识到我的回答帮助了两位用户,下面是从原始链接编辑:

编辑:

首先,始终备份您的数据。
  • 下载PHP的最新二进制版本(确保获得的是.zip包,而不是安装程序)
  • 将其反归档到一个目录
  • 覆盖XAMPP安装目录php子文件夹中目录的内容
  • 用较新版本覆盖目录apache\bin的内容
  • 现在的诀窍是:取名称中有“_2”的文件(例如php5apache2_2.dll或php5apache2_2_filter.dll),将其复制到apache\bin子目录中,并删除“_2”部分,覆盖现有文件。这是必要的,因为by XAMPP使用Apache 2.2版,并且带有2前缀的文件是为Apache 2.0构建的,因此您必须为较新版本(具有不同的插件接口)构建文件,并在XAMPP期望的文件名中重命名它们
  • 注意:在XAMPP安装中,有两个目录需要用新版本的文件更新,即
    php
    子目录和
    apache/bin
    子目录。

    在这个网站上你可以得到

    XAMPP附加组件


    通过使用此附加组件,您可以升级最新版本。

    从网站下载所需版本的php二进制文件。下载线程安全的二进制zip版本。 将下载的PHP版本解压缩到单独的文件夹中。 请确保新的php文件夹名称不是“php”。可能您可以使用filder名称作为版本名称。例如,对于PHP5.4,可以使用php54

    将新的php文件夹复制到xampp文件夹中。现在转到您的xampp/apache/conf/extra文件夹。从extra文件夹中打开文件httpd-xampp.conf。更改以下变量:

    变量PHPINIDir将被删除/ 可变加载模块为//php5apache2_2.dl


    保存文件httpd-xampp.conf。重新启动XAMPP apache服务器。如果服务器成功重启,则升级服务器php版本

    我还没有足够的声誉来评论,但是,要补充一下沙玛的回答:

    将htdocs文件夹复制到安全位置后,只需从PHPmyadmin导出数据库。只需转到每个数据库并单击顶部的“导出”选项卡。将它们导出为sql(或者其他任何形式,真的-只需记住您选择的内容)。升级您的XAMPP安装。现在,在新版本的XAMPP中,创建要重新插入的数据库。示例:您有一个从旧安装中导出的名为“test”的数据库,请将新的空数据库命名为相同的名称。现在,进入“测试”并点击顶部的导入按钮(导出按钮旁边)。单击ChooseFile,找到先前导出的sql文件(应该是“test.sql”)并导入。您的表格和数据将就位

    注意:有一个选项可以导出整个数据库集合(它将文件命名为127.0.0.1.sql)。但是,我从来没有多少运气让它正确导入。分别执行每个数据库以确保其正常工作。我写这篇文章有点长篇大论,但那是因为我喜欢为那些还不知道自己在做什么的人写作(我自己不久前就在那里(我们都在某个时候))

    我的答案的速记版本:
    1) 单独导出数据库
    2) 导入到新安装的XAMPP中(从官方网站下载新的PHP(最好是一些zip)。Old
    php
    目录重命名为
    php\u Old
    并再次创建
    php
    目录并将解压缩文件放在那里

    php.ini
    中,如果您使用了默认关闭的东西(如Memcached等),请连接所需的模块,但不要忘记添加相应的
    .dll
    文件

    2) 就我而言,我必须更新Apache。因此,重复相同的步骤:下载新包,重命名目录,创建新的
    apache
    目录,并放置新文件

    现在,您可以尝试从
    xampp
    文件夹重新启动apache运行
    apache_start.bat
    (最好运行此bat,而不是从Windows服务窗口重新启动apache服务,因为在这种情况下,如果出现一些错误,您将在控制台中看到所有错误,包括配置中出现问题的行)。如果您更新了Apache并运行了这个文件,那么在服务列表中您将看到Apache2.2,但在描述中,您可以获得另一个版本(在我的例子中是Apache/2.4.7)

    在Apache更新的情况下,您可能会遇到一些问题,因此请注意:

    • 替换整个目录后,您可能需要配置您的
      apache/conf/httpd.conf
      文件(从旧配置复制虚拟主机,设置文档根目录,目录权限,所有路径,扩展索引文件列表)(默认情况下,apache只有
      index.html
      ,因此其他索引文件将被忽略,apache将直接列出站点根目录。)
      LoadFile "/xampp/php/php5ts.dll"
      LoadModule php5_module "/xampp/apache/bin/php5apache2_2.dll"
      
      Replace C:\xampp\php\php.ini with C:\xampp\php\php.ini-dist
      Uncomment the lines:
      
      ;extension=php_mbstring.dll
      ;extension=php_pdo_sqlite.dll
      
      Replace the line
      
      magic_quotes_gpc = On
      
      with
      
      magic_quotes_gpc = Off
      
      Error: Apache shutdown unexpectedly.
      This may be due to a blocked port, missing dependencies,
      improper privileges, a crash, or a shutdown by another method.
      Press the Logs button to view error logs and check
      the Windows Event Viewer for more clues
      If you need more help, copy and post this
      entire log window on the forums