Laravel的念法到底是什麼呢?好像眾說紛云~
不過找到Laravel開發者Taylor Otwell 老婆Abigail Otwell 的官方說法了
「The name Laravel (Lar-a-vel, not Lauravel
) was made up by Taylor, a spinoff of Cair Paravel in Narnia. I get asked about the name a lot
」
大型網站架構..net 架構師.rabbitMQ.redis.行動開發.APP開發教學.PHP Laravel開發..net core C# 開發.架構師之路.Delphi開發.資料庫程式.進銷存.餐飲POS系統
Laravel的念法到底是什麼呢?好像眾說紛云~
不過找到Laravel開發者Taylor Otwell 老婆Abigail Otwell 的官方說法了
「The name Laravel (Lar-a-vel, not Lauravel
) was made up by Taylor, a spinoff of Cair Paravel in Narnia. I get asked about the name a lot
」
PhpStorm是目前PHP開發工具中最強也最完整的一套,11/24推出2016.3的正式版本了!
該版本還對頂尖 web 技術的支持進行了重大改進,如:支持流(flow)、改進對 TypeScript 的支持、支持 PostCSS、Stylelint 等。
原始連結: https://blog.jetbrains.com/phpstorm/2016/11/phpstorm-2016-3-is-now-released/
下載: https://www.jetbrains.com/phpstorm/download/#section=windows-version
A lightweight, fast and convenient modern LAMP Server with Redis and Memcached, extremely high performance. Laragon’ll turn your computer into a powerful server
Laravel是最近很夯的PHP framework。因為有在教學Laravel開發~所以順道將這部份用文字記錄分享
PHP Laravel 開發入門(一) – 環境建置
PHP Laravel 開發入門(二) – 設置與目錄架構
一、下載 https://github.com/superlevin/xamppforlaravel
二、config/database.ph的connections增加
[php]
‘sqlsrv’ => [
‘driver’ => ‘sqlsrv’,
‘host’ => env(‘DB_HOST’, ‘localhost’),
‘database’ => env(‘DB_DATABASE’, ‘dbname’),
‘username’ => env(‘DB_USERNAME’, ‘dbuser’),
‘password’ => env(‘DB_PASSWORD’, ‘dbpassword’),
‘charset’ => ‘utf8’,
‘prefix’ => ”,
],
[/php]
三、.env修改連線
[php]
DB_CONNECTION=sqlsrv
DB_HOST=localhost
DB_PORT=1433
DB_DATABASE=dbname
DB_USERNAME=dbuser
DB_PASSWORD=dbpassword
[/php]
四、測試是否可以產生
routes/web.php
[php]
Route::get(‘/’, function () {
var_dump( DB::table(‘tablename’)->first() );
});
[/php]
在5.2之前,是使用以上指令產生有resource(CRUD函數的controller)
[php]
php artisan make:controller MyNameController
[/php]
然後
[php]
php artisan make:controller MyNameController –plain
[/php]
在5.3,改為要加上 –resource才有
[php]
php artisan make:controller MyNameController –resource
[/php]
上個學期是教Codeigniter,這學期開始也要進入Laravel了!內容大致如下面~
Laravel介紹
MVC架構解說
Git版本控制介紹與安裝
Composer套件管理
Package安裝及使用
Route路由
Migrations/Seed 資料的遷移與填充
View與Blade模板引擎
Controller實戰
表單與驗證技巧
會員認證
網站安全性
如果對遠振有興趣的話,可以直接到 遠振主機選購。
Google從2014年宣佈有https的網頁會優先排序後,今年更發佈訊息說2017年1月開始的Chrome 56版本中,會針對傳輸密碼以及信用卡資訊的網頁,如果沒有使用https加密,就會一律告知是不安全的網站。


而以往申請SSL加密認證網頁的手續相當繁瑣,幸好遠振在今年2月就推出Linux主機的 Let’s Encrypt免費SSL加密服務,而八月底的cPanel 版本 58 開始,也提供了官方的 AutoSSL 服務,由 cPanel & Comodo 一起提供免費 SSL 憑證。
當然你會問,那免費SSL跟付費的SSL有什麼差異?遠振也給你答案如下:
Q:Let’s Encrypt 提供之 SSL 與付費 SSL 有什麼分別?
A:免費 SSL 與付費 SSL 間的差異有:
1. 品牌差異:
付費 SSL 有國際知名廠商如賽門鐵克(Verisign)、GeoTrust、Comodo、TWCA 等,根據調查,有 7 成以上的網友認得這些品牌,在電子商務網站上使用知名 SSL 廠商相對容易獲得客戶信任。
2. 憑證期限:
免費 SSL 只提供 3 個月使用期限,系統雖然會自動續約但是有續約失敗的風險,相對於付費 SSL 提供 1~3 年的購買期限可選擇,付費 SSL 還是商務網站的穩定選擇。
3. 多網域憑證:
免費 SSL 不提供萬用子網域的 SSL (wildcard ssl)。
4. 憑證標章:
免費 SSL 沒有提供憑證的驗證標章 (ssl seal),在正式電商網站上會建議用付費 SSL 取得動態驗證標章,贏得客戶信任。
5. 技術差異:
基本上免費與付費 SSL 加密技術差異不大。
6. 驗證方式:
免費 SSL 只提供網域驗證,不提供組織驗證 SSL,若要向銀行申請金流串接,可能須提供組織驗證 SSL。
除此之外,遠振也提供HTTP/2.0的加速技術。HTTP/2.0 是自 HTTP/1.1 於 1997 年由 IETF 發表後,最重大的更新。HTTP/2 使用二進制取代文字傳輸,並導入 HPACK 來壓縮 header,ALPN 用來加速加密傳輸,且具備在一個 TCP 連線中,平行處理多個要求的能力。就好像幫賽車加上氮氣加速一樣,讓網站瀏覽神速!
你的網站是否支援HTTP/2呢? 可以到 https://tools.keycdn.com/http2-test 測試!
如果對遠振有興趣的話,可以直接到 遠振主機選購。
網站建立了Sitemap.xml文件能夠快速地被Google、Bing等收錄且有利於搜尋的檔案。
CodeIgniter產生的方式:
controller
[php]
Class Seo extends CI_Controller {
function sitemap()
{
$data = "";//網站的url
header("Content-Type: text/xml;charset=iso-8859-1");
$this->load->view("sitemap",$data);
}
}
[/php]
views
[php]
<?= ‘<?xml version="1.0" encoding="UTF-8" ?>’ ?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc><?= base_url();?></loc>
<priority>1.0</priority>
</url>
<!– My code is looking quite different, but the principle is similar –>
<?php foreach($data as $url) { ?>
<url>
<loc><?= base_url().$url ?></loc>
<priority>0.5</priority>
</url>
<?php } ?>
</urlset>
[/php]
config/routes.php
$route[‘seo/sitemap\.xml’] = “seo/sitemap”;
二台主機都是使用 遠振主機
system/libraries/upload.php
[php]
$cmd = function_exists(‘escapeshellarg’)
? ‘file –brief –mime ‘.@escapeshellarg($file[‘tmp_name’]).’ 2>&1′
: ‘file –brief –mime ‘.$file[‘tmp_name’].’ 2>&1′;
[/php]
view.php
[php]
<form method="post" enctype="multipart/form-data">
<label>選擇檔案</label>
<input type="file" name="file" />
<input type="submit" name="submit" value="上傳">
</form>
[/php]
controller.php
[php]
if($this->input->post(‘submit’)){
//上傳到本機
$config[‘upload_path’] = @’./uploads/’;
$config[‘allowed_types’] = ‘jpg’;
$this->load->library(‘upload’, $config);
if($this->upload->do_upload(‘file’))
{
// 上傳檔案
$upload_data = $this->upload->data();
$fileName = $upload_data[‘file_name’];
// 本機檔案位置
$source = @’./uploads/’.$fileName;
// 載入ftp函式庫
$this->load->library(‘ftp’);
// ftp參數
$ftp_config[‘hostname’] = ‘xxxx’;
$ftp_config[‘username’] = ‘xxxx’;
$ftp_config[‘password’] = ‘xxxx’;
$ftp_config[‘debug’] = TRUE;
// 連線ftp
$this->ftp->connect($ftp_config);
// ftp檔案位置
$destination = ‘/public_html/assets/’.$fileName;
// 上傳ftp
$this->ftp->upload($source, ".".$destination,"auto",0777);
// 關閉ftp
$this->ftp->close();
// 刪除本機資料
@unlink($source);
}
}
[/php]