PHP意外'(',但没有'(''

时间:2013-04-20 11:13:56

标签: php

我的apache日志记录文件中出现了很多错误:

PHP:  syntax error, unexpected '(' in /etc/php5/apache2/php.ini on line 3

但这些是/etc/php5/apache2/php.ini的前15行:

[PHP]

;;;;;;;;;;;;;;;;;;;
; About php.ini   ;
;;;;;;;;;;;;;;;;;;;
; PHP's initialization file, generally called php.ini, is responsible for
; configuring many of the aspects of PHP's behavior.

; PHP attempts to find and load this configuration from a number of locations.
; The following is a summary of its search order:
; 1. SAPI module specific location.
; 2. The PHPRC environment variable. (As of PHP 5.2.0)
; 3. A number of predefined registry keys on Windows (As of PHP 5.2.0)
; 4. Current working directory (except CLI)
; 5. The web server's directory (for SAPI modules), or directory of PHP

php.ini的第一个未注释的行:

engine = On

short_open_tag = Off

asp_tags = Off

precision = 14

y2k_compliance = On

我认为这将是一个缓存问题,但我刚刚禁用了我的PHP缓存(它是APC)

我找不到整个文件中没有评论的任何(

如果没有,PHP怎么会认为文件中有(

2 个答案:

答案 0 :(得分:3)

;中的

php.ini表示评论行。 消息不计算注释行。所以第3行意味着在最高评论之后的第3行。

编辑1:确保您正在打开PHP真正使用的php.ini文件

编辑2:使用phpinfo();,在结果页面上查看Loaded Configuration File值。它会显示当前正在使用的php.ini文件。 注意:重启你的apache

答案 1 :(得分:1)

我试着模仿你的情况:

~]$ php --ini
Configuration File (php.ini) Path: /etc
Loaded Configuration File:         /etc/php.ini
Scan for additional .ini files in: /etc/php.d
Additional .ini files parsed:      /etc/php.d/curl.ini,
/etc/php.d/fileinfo.ini,
/etc/php.d/json.ini,
/etc/php.d/mbstring.ini,
/etc/php.d/phar.ini,
/etc/php.d/zip.ini

所以我转到/etc/php.ini并取消注释其中一行与“(”

~]$ vi /etc/php.ini
[PHP]

;;;;;;;;;;;;;;;;;;;
; About php.ini   ;
;;;;;;;;;;;;;;;;;;;
; PHP's initialization file, generally called php.ini, is responsible for
; configuring many of the aspects of PHP's behavior.

; PHP attempts to find and load this configuration from a number of locations.
; The following is a summary of its search order:
; 1. SAPI module specific location.
; 2. The PHPRC environment variable. (As of PHP 5.2.0)
; 3. A number of predefined registry keys on Windows (As of PHP 5.2.0)
; 4. Current working directory (except CLI)
; 5. The web server's directory (for SAPI modules), or directory of PHP
 (otherwise in Windows)
; 6. The directory from the --with-config-file-path compile time option, or the

现在我检查是否有错误通知:

~]$ php --ini
PHP:  syntax error, unexpected '(' in /etc/php.ini on line 16
Configuration File (php.ini) Path: /etc
Loaded Configuration File:         /etc/php.ini

是和错误,但它显示正确的行号,而不是忽略注释行。当我重新启动apache时,我在apache / error_log中也收到了相同的错误消息。

PHP:  syntax error, unexpected '(' in /etc/php.ini on line 16

php文件有效,但没有将关于ini的错误发送到日志。

那么,为什么不编辑/etc/php5/apache2/php.ini?只需擦除几行,然后查看错误消息是否移动到其他数字。

确保在更改后重启apache。