Tag Archives: PHP Troubleshooting

php convert dd/mm/yyyy to mysql datetime format – PHP 把 dd/mm/yyyy 轉換成 MySQL可用的格式

今天使用PHP 來把一些 XML Data 加入 MySQL 時出現了一些問題
原因是那些 XMLDate Formatdd/mm/yyyy 不能直接轉換成 MySQLDateTime Format

MySQLFormat要是 yyyy/mm/dd
做了一會research 之後終於找到解決方法了

PHP 轉換Date Format的功能是
DateTime::createFromFormat(‘Input Date Format’, $startDate)->format(‘Y-m-d’);

  $startDate = '25/12/2015';
  $startDate = DateTime::createFromFormat('d/m/Y', $startDate)->format('Y-m-d');

Happy Coding

PHP Error: Maximum execution time of 60 seconds exceeded

今日當試在執行一個自己寫的PHP functionImport data的時候 出現了以下的錯誤信息
Error: Maximum execution time of 60 seconds exceeded
Error: Maximum execution time of 60 seconds exceeded

PHP execution timeout

做了一會research 之後找到了解決方法了
大家可以更改php.ini

max_execution_time = 60

或是在 php的function上加上 set_time_limit這個程式碼

E.g.

// Seconds 設定為 0 是無限
$seconds = 60;
set_time_limit($seconds);

Happy coding

PHP Convert Array on String to a string – 如何將一個字串的陣列 轉成一個字串

今天的活動上..需要整理一些從API 取得資料 其中一個FieldArray of String 轉換成 String
以方便顯示

解決方法十分簡單
我們可以使用PHPimplode 來解決這個問題
[“Apple”, “Banana”, “Orange”];

E.G.

// 我們先建立一個String Array 來作試驗
$array = array('Apple', 'Banana', 'Orange');
// 我們可以用 PHP 的 implode功能.. 
// 第一個變數是想用什麼分隔這些析開了的時串
// 第二個變數是你的 Array/陣列 
echo implode(",", $array);

PHP Convert String Array to String Code
結果 會出現 Apple,Banana,Orange
PHP Convert String Array to String via implode
Happy Coding

PHP Warning: Cannot open ‘\xampp\php\extras\browscap.ini’ for reading in

之前介紹過怎樣在Windows 執行 PHP Command E.G. 設定環境變數
和怎樣解決 PHP Unable to load dynamic library 的問題

到最後我們還有另一個問題要解決..
就是
PHP Warning: Cannot open ‘\xampp\php\extras\browscap.ini’ for reading in Unknown on line 0
PHP Warning:  Cannot open '\xampp\php\extras\browscap.ini' for reading in Unknown on line 0

問題出現的原因和之前的一樣..是一個路徑計定的問題

解決方法十分簡單
我們可以開啟 php.ini 檔案.. 之後
browscap 的 路徑

browcap = "\xampp\php\extras\browscap.ini"

browscap path on php.ini

轉為

browcap = "d:\xampp\php\extras\browscap.ini"

Cannot load browscap xampp php.ini fixed

之後再嘗試一下.. browscap 的問題應該解決了

PHP Command Successfully set up on Windows machine

Hope you find it useful

PHP Unable to load dynamic library ‘\xampp\php\ext\php_bz2.dll’

當我嘗試在Command Prompt上執行 php的指令時..出現以下的錯誤
PHP Warning: PHP Startup: Unable to load dynamic library ‘\xampp\php\ext\php_bz2.dll
PHP Startup: Unable to load dynamic library php_bz2.dll

PHP Warning: PHP Startup: Unable to load dynamic library ‘\xampp\php\ext\php_curl.dll
PHP Startup: Unable to load dynamic library php_curl.dll

還有很多其他的Dynamic Library
PHP unable to load dynamic library

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_bz2.dll

Warning: PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_bz2.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_curl.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_mbstring.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_exif.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_gd2.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_gettext.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_mysql.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_mysqli.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_openssl.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_pdo_mysql.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_pdo_sqlite.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_soap.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_sockets.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_sqlite3.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_xmlrpc.dll

PHP Warning:  PHP Startup: Unable to load dynamic library '\xampp\php\ext\php_xsl.dll

PHP Warning:  Cannot open '\xampp\php\extras\browscap.ini' for reading in Unknown on line 0

之後去查看了 php/ext 資料來..
[由于我是使用 xampp 的關係..我的xampp 資料夾是儲存在d:\
所以我的 xampp path 是這樣的 D:\xampp\php\ext\]

發現上面說明’Unable to load‘ 的 Dynamic Library 都可以在這裡找到
PHP Ext Folder in XAMPP

所以應該不是Library的問題
而是php.ini 內的一些設定問題

做了一會research 之後發現

解決方法十分簡單
只要將預設的 extension_dir 設定變成我們的 absolute path便可以
E.G. D:\xampp\php\ext\

extension_dir = "\xampp\php\ext"

php.ini extension_dir
轉成

extension_dir = "d:\xampp\php\ext"

php.ini extension_dir with absolute path

之後問題便可以解決
PHP command works

Hope you find it useful

‘php’ is not recognized as an internal or external command – How to run PHP Command Line on Windows – 怎樣在Windows 上執行php 指令

最近用多了PHPLibrary..
很多時候都需要以PHP Command 來執行的
當我在Command Prompt 上輸入 php之後執行時 出現了以下錯誤
“‘php’ is not recognized as an internal or external command, operable program or batch file.”
PHP is not recognized as an internal or external command, operable program or batch file

Command Prompt 上執行 PHP 指令其實很容易的
Windows 上我們只需要把 php.exe 的資料夾 註冊在 Windows 的 Environment Variable /環境變數 便可以

首先要找到我們的PHP.exe 儲存在那裡
XAMPP PHP Folder
由於我是使用xampp的所以我的 php.exe 會存在
[xampp 的儲存路徑]\php\

Advanced System Settings/進階系統設定” -> “Advanced tab/進階 分頁” ->”Environment Variables / 環境變數” 按一下
在之前的網誌有介紹如何修改”Environment Variables / 環境變數” 有興趣的朋友可以到以下網誌參考
How to install Ant on Windows – 如何在Windows 上安裝Ant

Environment Variable
儲存之後按 “OK/確定
之後再登出再登入Windows 便可

Execute PHP on Windows Command Prompt
我的PHP config 檔案出現了小小問題..之後的網誌會介紹怎樣解決這些1

Hope you find it useful

Codeigniter GoDaddy .htaccess URL Rewrite issue – Codeigniter 在GoDaddy 網站寄存上 .htaccess Url Rewrite 的問題

今日再Upload一個Dev的網頁到 GoDaddy Hosting時
不知道為什麼只是可以看到主頁..
e.g. http://sharechiwai.com
但是當我嘗試到 其他頁時
E.G.
http://sharechiwai.com/app/youtubedownload
便出現以下的錯誤
500 Internal Server Error - due to wrong URL Rewrite rules on .htaccess

如何在 Codeigniter上使用 .htaccessURL rewrite隱藏 index.php
之前介紹過
Codeigniter to remove index.php URL – 在Codeigniter 的URL 除去index.php
E.G.

RewriteEngine on
RewriteCond $1 !^(index.php)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

Microsoft Azure 自己設定的 Ubuntu 上沒有問題
但是在GoDaddy上出現問題

做了一會research之後終於找到了解決方法
GoDaddy.htaccessURL Rewrite rule有小小不同的

我們可以使用以下的 URL rewrite rules 去解決 CodeigniterGoDaddy 網站寄存上 .htaccess Url Rewrite 的問題

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?$1 [L]

Codeigniter GoDaddy URL Rewrite Issue fixed
Hope you find it useful