Category Archives: PHP 新手筆記

Message: file_get_contents(): Unable to find the wrapper “https” – did you forget to enable it when you configured PHP?

更新完 XAMPP 之後..當我嘗試執行 一個Google API的時候出現以下的錯誤信息
Message: file_get_contents(): Unable to find the wrapper “https” – did you forget to enable it when you configured PHP?

原因是這個API 是用了 HTTPS
而因為我的Apache / PHP Web server上沒有 enable HTTPS wrapper []

解決方法
php.ini 上 Enable php_openssl 這個Module 便可以了

by removing the “;

extension=php_openssl.dll

Hope you find it useful

How to start a web server via PHP – 如何使用PHP 來建立一個網絡伺服器?

之前和大家介紹過怎樣使用Python 來建立一個網絡伺服器
How to start a web server via Python – 如何使用Python 來建立一個網絡伺服器?

今天再想一想..原來這個指令是十分有用的
所以便和大家分享 如何使用PHP 來建立一個網絡伺服器 =P
之前當要測試一些PHP code的時候
我常常都在 XAMPPhtdoc 資料夾內建立新的資料夾 來試東西

現在只需要使用Command Prompt開啟這個要測試PHP Code的資料來
之後 執行以下PHP 指令便可以輕鬆地起一個Web Server

php -S localhost:8080

PHP command to build web server
之後大家便可以到 http://localhost:8080 去看看 PHP Code做了什麼出來

Hope you find it useful

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

Set up Composer with XAMPP – 如何在Windows XAMPP 上安裝 Composer – PHP Package Mangement Tool

朋友常常介紹我使用Composer 一個 PHP 的 Package Management Tool
Composer – Dependency Manager for PHP

十分有用..就像 Visual StudioNugetNodeJsnpm
有興趣既朋友可以參考以下網頁
https://getcomposer.org/

Composer - Dependency Manager for PHP

今天想和大家分享怎樣在Windows 使用 XAMPP 的環境下安裝 Composer

安裝程序很簡單..但是我也曾經遇過些少問題..
所以還是在這裡寫下些筆記吧.

首先大家需要到Composer 的網站 找Windows InstallerSection 下載Composer_Setup.exe
https://getcomposer.org/download/

之後開啟這檔案便可以開始安裝了 按”Next / 下一步
Composer Setup

選擇安裝那些Components..我選擇了預設的選項
Composer Setup - Select Components

按”Next / 下一步” 之後需要選擇電腦上的 PHP.exe 的儲存位置[因為Composer需要使用PHP的]
我是使用 XAMPP 的..所以我的PHP 是儲存在 D:\xampp\php\php.exe
Composer select php.exe path

按”Next / 下一步“之後便會出現一個安裝前的總結..
如果看了覺得設定沒有問題的話便可以按”Install / 安裝
Composer Setup Summary

安裝完成
Completing Composer Setup

登出再登入電腦之後便可以在Command prompt 上執行 Composer
Composer install successfully

Hope you find it useful

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-cs-fixer – PHP Coding Standards Fixer

自從用了 Visual StudioStyleCop / Resharper
之後便開始愛上Coding Standard / Best Practice..
因為這些Coding Standard 的工具可以幫助我們寫一些更有效率的程式碼
還有..如果所有Developer 都跟隨著這些Coding Standard..
便其他人便可以很容易便明白程式是怎樣 layout的

最近開始寫多了PHP 相關的網站..
如果有一些免費的工具..像StyleCop
朋友便介紹..我可以使用PHP-CS-FIXER 來做差不多的東西..
你可以使用PHP Command 來執行PHP-CS-FIXER

首先我們先要以下網址去下載php-cs-fixer.phar
https://github.com/FriendsOfPHP/PHP-CS-Fixer

Download PHP-CS-FIXER
之後把他儲存在 一個容易找到的位置..因為我們要用這個路徑來執行php-cs-fixer
我便把他儲存在”d:\xampp\php\extras\php-cs-fixer.phar
PHP-CS-Fixer.phar Location

所有東西都準備好之後我們便可以嘗試執行 php-cs-fixer
執行方法 是這樣的

php [Full file path for php-cs-fixer.phar e.g. d:\xampp\php\extras\php-cs-fixer.phar] fix [PHP code folder path e.g. d:\xampp\htdocs\sharechiwai\applicat
ion\controllers] –fixers=[settings e.g. -indentation]

php php-cs-fixer.phar fix D:\xampp\htdocs\BlogBackup\wp-content --fixers=-indentation

結果像這樣
PHP-CS-Fixer Result
完成後會總結那些檔案更新了..和那些檔案有問題..
PHP-CS-Fixer Summary

更多怎樣使用 php-cs-fixer 指令和變數的 詳情可以參考下以網址
http://cs.sensiolabs.org/
PHP-CS-Fixer Variable / Parameters

Hope you find it useful