顯示具有 PHP 標籤的文章。 顯示所有文章
顯示具有 PHP 標籤的文章。 顯示所有文章

2016年7月31日 星期日

Laravel 使用 GCS 做為儲存空間

前言
Laravel 有內建 Filesystem 套件,所以可以用來和例如 Amazon S3, Dropbox, Google Cloud Storage 等等服務串接

但找了一下發現和 Google Cloud Storage (GCS) 這方面的資料好像滿零散的
所以整理了一下

正文
GCS 使用的 API 和 S3 是相同的,但是目前只有 v2 有支援,所以需要安裝 v2 的 s3 相關套件,於 composer.json 的 require 加上

 { ...
 "league/flysystem-aws-s3-v2": "~1.0"
  }
 


然後 composer update 或是 install

2016年7月21日 星期四

Laravel Unit Test (上)

前言:
之所以寫這篇教學 ( 筆記 ),是因為希望執行 Unit Test 時可以有個單純的環境,且完整的測試 DB 設計 ( migration )是否正確
所以找了一下將開發環境和測試環境 DB 分離的方法

正文開始:

  1.   這邊使用 memory 形式的 SQLite 來做為 Laravel 與 PHPUnit 測試時的 DB 設定
    於 config/database.php 的 'connections' => [ … 設定 sql_testing 做為 Test 環境使用,如下範例

2016年5月19日 星期四

Laravel 客制化登入頁面



這邊使用Laravel內建的User 資料表,可以先加上一些欄位
於 database/migrations/xxxx_create_users_table.php
加上 account 做示範,例如:

    public function up()
    {
        Schema::create('users', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name');
            $table->string('account’); // !!
            $table->string('email')->unique();
            $table->string('password');
            $table->rememberToken();
            $table->timestamps();
        });
    }

然後migrate db, User 的Model fillable 也要填寫

先建立認證用的Controller,這邊叫User
於終端機輸入
php artisan make:controller UserController

2016年4月29日 星期五

如何使用Google的圖形驗證碼(reCAPTCHA)防止機器人


前言


因為MyAndroid這個網站也有一段時間了,開放留言就算有圖形驗證碼還是保受留言機器人騷擾之苦… 索性直接關閉所有人的留言功能
等到有空再來自幹一個防止機器人的驗證程序,但這個過程一拖就是好多年了 (平日上班太忙)
直到最近想說,乾脆就整合Google的圖形驗證碼吧

順便做個教學


正文


2015年9月16日 星期三

Mac安裝PostgreSQL與簡單教學

PostgreSQL和MySQL一樣都是一種SQL Server
以下有些教學是可以提供給會MySQL,也想使用PostgreSQL的使用者看看

第零步,安裝PostgreSQL

使用brew來安裝 (Linux的話就看是apt / yum 還是什麼的,以下以Mac為例)

brew install postgresql

成功的話,會看到最後有段訊息

To have launchd start postgresql at login:
  ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents
Then to load postgresql now:
  launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
Or, if you don't want/need launchctl, you can just run:
  postgres -D /usr/local/var/postgres


主要的重點是說,你想要一登入Mac的使用者,就自動啟動PostgreSQL的話,就在終端機輸入


ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents

要手動啟動 (第一次裝完最好也輸入一次)

launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

如果想要停止的話輸入

postgres -D /usr/local/var/postgres




第一步,建立Database
createdb 是 postgresql 建立資料庫的指令

2015年8月27日 星期四

Mac之簡單PHP教學入門(使用MAMP與Eclipse PDT)





1. 至Eclipse官網下載PHP PDT (PHP Development Tools)版的Eclipse

2. 下載MAMP,這邊用的是Free版

3. 解壓縮Eclipse (沒有裝過JRE的可能在這時候會需要安裝)

4. 安裝MAMP

5. MAMP裝好後,在Mac的Launchpad就會看到MAMP和MAMP Pro,使用MAMP就好
開啟後還會再問一次,一樣選MAMP就好
(因為這邊只是練習和測試,所以使用只有本機連線功能的MAMP就好)

2015年8月19日 星期三

PHP的JSON轉換 (json encode / json decode)


PHP在5.2版之後已有內建的JSON轉換函數
就和base64_encode, base64_decode 一樣方便簡單使用

php的內建json方法就是 json_encode , json_decode


json_encode可以把PHP的陣例完美的轉換成json format
範例如下
 
 $data = array();
 $data['list1'] = array( 1 => 'test', 2 =>'test2', 3 => 'test3');
 $data['url'] = 'myandroid.tw';
 echo json_encode($data);