为什么Windows上的PHP即使存在扩展名php_intl.dll也看不到? [英] Why can't PHP on Windows see extension php_intl.dll even though it exists?

查看:264
本文介绍了为什么Windows上的PHP即使存在扩展名php_intl.dll也看不到?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在尝试使intl扩展程序在我的测试工作站上工作(PHP 5.5.1,Apache 2.2.4,Windows 7 32位).看来,不管我尝试什么,我都无法启动它并运行它.

  • 我在php.ini中未注释"extension = php_intl.dll"行.
  • 我已验证extension_dir指令指向正确的目录(c:\ wamp \ php5.5 \ ext).
  • 我已验证php_intl.dll在c:\ wamp \ php5.5 \ ext中.
  • 我已验证所有icu * .dll文件都位于php根目录(c:\ wamp \ php5.5)中.
  • 我已验证c:\ wamp \ php5.5在我的PATH中.
  • 是的,我正在编辑的php.ini副本是正确的副本,由httpd.conf中的PHPIniDir指令指定.

我已经检查了Apache错误日志,并在每次重启Apache时都找到了这一行:

PHP警告:PHP启动:无法加载动态库'c:\ wamp \ php5.5 \ ext \ php_intl.dll'-找不到指定的模块.\ r \ n在第0行的Unknown中

我重复一遍,但是c:\ wamp \ php5.5 \ ext \ php_intl.dll确实存在!

我很想尝试指向Windows资源管理器,然后对着我的电脑大喊:看!那里的STINKIN文件正确!"即使我们显然在同一个目录中,为什么我看不到文件和PHP的任何想法呢?还是我错过了其他事情?

解决方案

确保Apache可以从PHP基本目录中找到并加载icu * .dll文件.

快速,简单的解决方案是将这些dll复制到Apache bin目录中.

I've been trying to get the intl extension working on my test workstation (PHP 5.5.1, Apache 2.2.4, Windows 7 32-bit). It seems that no matter what I try I can't get it up and running.

  • I've uncommented the line "extension=php_intl.dll" in my php.ini.
  • I've verified the extension_dir directive is pointing at the correct directory (c:\wamp\php5.5\ext).
  • I've verified php_intl.dll is in c:\wamp\php5.5\ext.
  • I've verified that all the icu*.dll files are present in the php root directory (c:\wamp\php5.5).
  • I've verified that c:\wamp\php5.5 is in my PATH.
  • And yes, the copy of php.ini I'm editing is the correct one, the one specified by the PHPIniDir directive in httpd.conf.

I've checked the Apache error log and found this line every time I've restarted Apache:

PHP Warning: PHP Startup: Unable to load dynamic library 'c:\wamp\php5.5\ext\php_intl.dll' - The specified module could not be found.\r\n in Unknown on line 0

I repeat myself, but c:\wamp\php5.5\ext\php_intl.dll DOES EXIST!

I'm tempted to try pointing at Windows Explorer and shouting at my computer, "LOOK! THE STINKIN' FILE IS RIGHT THERE!" Any idea why I can see the file and PHP cannot even though we're apparently looking in the same directory? Or is something else going on that I've missed?

解决方案

Make sure that Apache can find and load icu*.dll files from PHP base dir.

Fast, simple solution is to copy these dll's to Apache bin directory.

这篇关于为什么Windows上的PHP即使存在扩展名php_intl.dll也看不到?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆