我正在尝试让XHProf在我的WampServer上工作。
我已经从:http://dev.freshsite.pl/php-extensions/xhprof/file/details/xhprof-0103-for-php-53-vc9.html下载了dll,并在C:\wamp\bin\php\php5.3.9\ext中将其重命名为xhprof.dll (这是phpinfo()中为扩展列出的目录)
来自phpinfo()的Php.ini路径: C:\wamp\bin\apache\Apache2.2.21\bin\php.ini
该文件中列出的扩展名:
extension=php_curl.dll
extension=xhprof.dll
;extension=php_dba.dll
extension=php_mbstring.dll
;extension=php_exif.dll
;extension=php_fileinfo.dll
extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
;extension=php_ming.dll
;extension=php_mssql.dll
extension=php_mysql.dll
extension=php_mysqli.dll
;extension=php_oci8.dll
;extension=php_oci8_11g.dll
;extension=php_openssl.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mssql.dll
extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
;extension=php_phar.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_soap.dll
;extension=php_sockets.dll
;extension=php_sqlite.dll
;extension=php_sqlite3.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll
;extension=php_zip.dll但是当我重新启动WampServer和与之相关的服务时,XHProf信息没有出现在phpinfo()中。
我正在寻找一种方法来修复这个问题,或者进一步调查为什么这个扩展没有加载
谢谢
发布于 2012-05-04 16:16:11
您使用的是64位WampServer,但xhprof.dll是为32位体系结构设计的,因此不兼容。在我自己的Windows7机器上,我在apache_error.log中得到了这个错误:
PHP Warning: PHP Startup: Unable to load dynamic library 'c:/wamp/bin/php/php5.3.8/ext/php_xhprof.dll' - %1 is not a valid Win32 application.\r\n in Unknown on line 0
<br />
<b>Warning</b>: PHP Startup: Unable to load dynamic library 'c:/wamp/bin/php/php5.3.8/ext/php_xhprof.dll' - %1 is not a valid Win32 application.
in <b>Unknown</b> on line <b>0</b><br />现在似乎还没有64位版本,所以你只能选择你能做的。第一个选择是使用32位版本的WampServer (在开发机器上,我看不到这有太多缺点)。第二个是在fresh-site上甜言蜜语,以编译/支持64位。祝好运!
发布于 2013-04-23 21:49:06
谢谢伦纳德·查利斯。我在几个小时内遇到了类似的错误。我需要使用php_ibm_db2.dll。在将其添加到扩展文件夹和php.ini文件之后。我开始收到错误消息。
无法加载动态库'c:/wamp/bin/php/php5.3.13/ext/php_ibm_db2.dll‘- %1不是有效的Win32应用程序。
我遇到的一些解决方案建议将其放在system32文件夹中。这并没有起到作用。我去了几个论坛和博客。所有建议都失败了。直到我看到你的推荐信。这么简单,我不明白为什么我没有想到这一点。尽管错误消息有点模糊。
顺便说一句,对于那些使用PHP to DB2环境的人来说,dll文件可以在这里获得: 。
确保还安装了Microsoft Visual C++ 2010 SP1可再发行程序包(x86) - vcredist_x86.exe。
我希望这对将来可能遇到类似问题的任何人都有所帮助。感谢为这个论坛做出贡献的每一个人。这是一个很大的帮助。
https://stackoverflow.com/questions/10413832
复制相似问题