css

2013年10月28日 星期一

CentOS 安裝 Xdebug

安裝前 phpinfo 內 zend圖案









1. 用 pecl 安裝

安裝指令  sudo pecl install xdebug

錯誤訊息 :  phpize not found (找不到此指令)

網路上搜尋後,有人說在Debian/Ubuntu要先裝 php5-dev



2.安裝 php dev

搜尋yum search php5-dev   =>no matches found(在centos內沒有php5-dev)

搜尋yum search php-dev  => php-devel.x86_64

安裝 yum install php-devel



3.再次用pecl 安裝xdebug

  pecl install xdebug   安裝成功



4.php.ini 設定 zend_extension=xdebug.so  

   官方網站說要使用完整路徑

   先搜尋安裝位置 find / -name xdebug.so

   找到檔案位置 /usr/lib64/php/modules/xdebug.so

   修改php.ini  :  vim /etc/php.ini 
    到檔案尾端加入一行
 
     zend_extension="/usr/lib64/php/modules/xdebug.so"

     存檔離開 :wq

官網提示
Note: You should ignore any prompts to add "extension=xdebug.so" to php.ini — this will cause problems.



5. 重新啟動WEB Server

     /etc/rc.d/init.d/httpd restart



6.到 phpinfo 頁面確認

   安裝後 phpinfo 內圖樣 多了一行with Xdebug ...
 



Xdebug 官方網站安裝說明
http://xdebug.org/docs/install



補充:要已安裝 php-pear  ,才能用 pecl 指令

2013年10月17日 星期四

PHP session.save_path

PHP session 設定參數 ( php.ini)


session.save_path = "/var/lib/php/session"  (centos環境下路徑)


Runtime Configuration 



PHP session 暫存檔過多的注意事項

error_reporting() php.ini

error_reporting    設定回報哪些類型的php錯誤

 int error_reporting ([ int $level ] )

此函式設定php執行的錯誤回報等級,若無指定level層級,則使用目前層級(定義在php.ini內 error_reporting)

level 等級可以用數字或名稱來指定;

但隨著php更新,新的error level 等級加入,用數字的表示error level 可能造成錯誤的結果,

保險的方法還是用名稱設定 error level




原函式定義
http://php.net/manual/en/function.error-reporting.php

錯誤等級的定義
http://www.php.net/manual/en/errorfunc.constants.php

位元運算
http://www.php.net/manual/en/language.operators.bitwise.php

Runtime錯誤回報設定
http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-reporting



在 php.ini 內 (約513行)  

error_reporting  =  E_ALL & ~E_NOTICE