laravel 是近期十分熱門的php開發框架,本人雖然基本上在linux 上開發,不過最近因為工作環境的關係,同時用上windows,上網也見到一段視頻很不錯,提供給入門者。
分類: php
Roundcube 免費開源email系統
今日見到朋友公司電郵系統,界面與yahoo,outlook 等相似,而且界面十分美觀,查看了一下說明文件,發現是免費且開源,一直做懶人使用squirremail 和qmail,都沒去看這東西裡面相當不錯,而且可以直接匯出outlook 設定。 繼續閱讀 Roundcube 免費開源email系統
復活節假期節目 學習Laravel 5
復活節長假,銀行戶口沒有太多銀兩外遊,只好留守香港捱麵包過日子,5日長假有什麼做呢?打開網頁看到2015年最受歡迎的php framework 是Laravel,十分好奇到底為何那麼受歡迎,於是就上網看看資料。
筆者看了『歲寒』博客的入門文章,看完後自己用macbook +MAMP 安裝composer,試了一下,終於體驗到為何它會那麼出名。
Laravel 是以精簡容易開發出名,簡單的 php artisan 就可以自動生成需要controller 和model,內建了主題,migrate可以很快生成database 需要的測試數據,還有eloquent簡單打造關聯,不用自己慢慢輸入,真的1個小時內完成了一個簡單的blog 系統,相當好用的framework。對於筆者這樣一個人的自學開發者,看來是時候放棄以前自己慢慢打code 建立文件的日子了。
因為妻子壓力大,每天已經不能長時間對著顯示屏,只能提高自己的效率才能更快完成工作,laravel 值得推薦。不過,假如你是php 初學者,建議你還是先跟著php 入門網站教學學習一下基本,還有數據庫關聯等知識,然後才開始使用。
相關網站:
https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx
http://laravel.tw/
http://laravel-china.org/docs/5.0/eloquent
php csv輸出讀取繁體亂碼
上次經歷了一次php csv 輸出亂碼,以為已經能解決了一切問題,但開心得太早了。今天用phpexcel 類讀取一個xlsx 文件,裏面文字比較特別,夾雜著繁體和簡體字,所以一定要用unicode。一讀取,發現亂碼,怎麼回事?之前未發生此情況。
開始排除問題,之前因為已經寫好,所以這次很有信心沒測試直接mysql_query 到數據庫中!慘!很多亂碼,一萬多條要刪除,所以整個數據庫直接刪除(早已經備份了)。
測試一,BOM問題,之前發生亂碼是文件有BOM問題,全部改一次,發現情況一致。
測試二,下載phpexcel 測試文件,直接讀取文件,發現也是亂碼,怎麼辦?
測試三,開始懷疑讀取的文件有問題,一個xlsx 會有甚麼問題呢?於是開啟文件,把它另存成xls,然後再讀取一次,亂碼消失了=.=
發現到是格式問題,然後上網谷哥一下,原來還有不少人討論,元兇和office 2007 有很大關係,今天就不多寫,把這些討論的資料搬上來給大家去參考,解決方法就是:
在寫入csv是,要加入BOM!
參考資料:
http://blog.darkthread.net/post-2009-09-06-csv-encoding-again.aspx
http://blog.roodo.com/rocksaying/archives/1096340.html
phpexcel 亂碼 輸出解決方法
phpexcel 很常用,因為可以用來讀取excel,又可以輸出,之前在用時就遇到一個問題,輸出下載時出現亂碼,之前由於趕時間,就沒有用瀏覽器直接下載,而是提供下載鏈接,因為有些不同;
$objWriter->save(‘php://output’);
上面是直接跳出下載提示,不會存在伺服器
$objWriter->save($file);
這個就會存一份在伺服器中,$file就是你定義的名字,路徑等。
那麼直接下載亂碼如何解決,筆者看了很多資料,google了不少,終於解決了,在此總結。
因為程序用了smarty,因此需要考慮這問題。
wordpress wp ecommerce last product
wordpress 設計theme 時需要在首頁取得wp ecommerce 的最新產品資料,可以用以下方法,輸出圖片,和title,網上找沒什麼資料,只好自己在widget 改一下那來用
[php]
global $wpdb;
$args = wp_parse_args( (array)$args, array( ‘number’ => 5 ) );
$number = 3;
$image = true;
$width = 150;
$height = 150;
$latest_products = get_posts( array(
‘post_type’ => ‘wpsc-product’,
‘numberposts’ => $number,
‘orderby’ => ‘post_date’,
‘post_parent’ => 0,
‘post_status’ => ‘publish’,
‘order’ => ‘DESC’
) );
$output = ”;
if ( count( $latest_products ) > 0 ) {
$output .= ‘
- ‘;
- ‘;
// Thumbnails, if required
if ($image) {
$output .= ‘‘;
$output .= ‘ID, $width, $height ) . ‘” title=”‘ . $latest_product->post_title . ‘” alt=”‘ . $latest_product->post_title . ‘” />’;
else
$output .=’‘;$output .= ‘‘;
$output .= ‘‘;
}
// Link
$output .= ‘ 發佈於 分類 php, wordpress
foreach ( $latest_products as $latest_product ) {
$output .= ‘