PIXNET Logo登入

頭昏腦脹的小小MIS記錄資料

跳到主文

記錄工作上常會遇到的特殊問題

部落格全站分類:不設分類

  • 相簿
  • 部落格
  • 留言
  • 名片
  • 11月 14 週三 201216:48
  • PHP 讀取/寫入範例

fopen 開啟檔案或URL
完整說明:http://php.net/manual/zh/function.fopen.php
 




模式




名稱




功用






r




Read




開啟檔案,以供讀取,從檔案開頭開始






r+




Read




開啟檔案,以供讀取及寫入,從檔案開頭開始






w




Write




開啟檔案,並寫入(覆寫)






w+




Write




開啟檔案,以供讀取及寫入(覆寫)






x




Cautious write




開啟檔案並寫入,假如檔案已存在,不會開啟開檔,fopen()會回傳false






x+




Cautious write




開啟檔案,供讀取及寫入,假如檔案已存在,不會開啟開檔,fopen()會回傳false






a




Append




開啟檔案,以供新增內容,接續在目前已有的內容之後開始寫入,假如檔案不存在,會建立一個新檔






a+




Append




開啟檔案,以供新增及讀取內容,接續在目前已有的內容之後開始寫入,假如檔案不存在,會建立一個新檔





(繼續閱讀...)
文章標籤

brucebin 發表在 痞客邦 留言(0) 人氣(720)

  • 個人分類:php
▲top
  • 12月 24 週一 200723:35
  • session_start在UTF8出現的問題

目前遇到有部分函數在UTF8中會因為被插入的BOM出現問題,以下是相關的說明:
如果在 Smarty 中 include 了 UTF-8 格式的檔案,就要小心 BOM (Byte Order Mark) 的問題。
BOM 的由來簡單來說是為了讓一些編輯程式能夠辨認該檔案是不是屬於 Unicode 格式,請參考 憤怒的青蛙: UTF-8, BOM, Micrisoft ,或用 Google 搜尋 UTF-8 BOM ,有更多有用的訊息。
那麼為什麼 BOM 會造成影響呢?因為 BOM 對 HTML 來說是屬於字元,所以 include UTF-8 的檔案時,HTML 就會就會認為被 include 的子樣版上方有個字元,因此就會保留一個空間給它了,就是你們看到那個白白的空行。
補充:這個空白行似乎只有 IE 才會出現。
這種問題也會發生在 PHP 上面,如果有使用 Session 時,常會見到以下情況:
code:Warning: session_start() [http://www.php.net/manual/en/function.session-start]: Cannot send session cookie - headers already sent by (output started at test.php:1) in test.php on line 2 而這也是 BOM 在做怪,原程式如下:
code:(BOM在這裡,但你看不見它)<?php session_start(),?> 解決的方式可以改用 EditPlus 、 EmEdit 等可支援無 BOM 之 UTF-8 的文字編輯器,如果是 Dreamweaver MX 2004 的話,在編碼方式選成 Unicode (UTF-8) 時就要將取消「包含 Unicode 簽名 (BOM) 」。這邊我先提供UltraEdit的儲存畫面就知道要選哪個了。
未命名 也有人說在session_start前面加@也可以避免此問題,但是加了@會導致宣告成功也不給錯誤提示的情況出現。
所以加@並不是真正可以解決問題的方式,根本之道還是在儲存的時候要將BOM的資料消除才行。 我們也可以說這個問題是 php 對 unicode 支援性不足造成的,而 php 的官方說法是預計在 php 6 時才會改成這個問題。
因此,在此之前,請記得在編輯 php 網頁時,不要加註 BOM 的記錄。
(繼續閱讀...)
文章標籤

brucebin 發表在 痞客邦 留言(1) 人氣(83)

  • 個人分類:php
▲top
1

自訂側欄

自訂側欄

個人資訊

brucebin
暱稱:
brucebin
分類:
不設分類
好友:
累積中
地區:

熱門文章

  • (9,556)如何解決 Outlook 2007 / 2010 中的離線狀況
  • (5,463)修改Outlook電子郵件規則時會發生"規則已被停用"的錯誤訊息
  • (3,868)幾種轉換虛擬機器格式的工具
  • (2,863)[轉貼]Fckeditor 漏洞整理
  • (1,532)Esxi install drivers
  • (601)DOS指令集
  • (314)VMware ESXi / Workstation 無法啟動 Windows 2012 RC
  • (298)Putty 中文顯示或輸入的相關設定資料
  • (151)phpmyadmin 使用Big5語系的問題
  • (46)CVSUP 安裝更新

文章分類

  • MAC (1)
  • Hyper-v (1)
  • Centos (2)
  • Ubuntu (1)
  • PLESK (1)
  • 套件問題 (2)
  • php (2)
  • MSSQL (1)
  • office (4)
  • ASP.NET (2)
  • WINDOWS (11)
  • VMware (12)
  • MYSQL (2)
  • FreeBsd5.4 (13)
  • 未分類文章 (1)

最新文章

  • Mac OS X Mountain Lion InstallESD.dmg 轉 ISO
  • Centos 忘記 root 密碼
  • 幾種轉換虛擬機器格式的工具
  • Windows 8 程式取得管理者權限 或 關閉 UAC 方法
  • Windows 8 啟動時發生"DNS不存在"的錯誤
  • Centos 在 VMware Workstation 開機網卡不會啟動
  • Ubuntu 11.10 檢視CPU溫度
  • PHP 讀取/寫入範例
  • Windows 2008 執行 Sysprep 的方式
  • VMware ESXi / Workstation 無法啟動 Windows 2012 RC

最新留言

  • [07/12/25] uk 於文章「session_start在UTF8出現...」留言:
    謝謝賓哥分享 原來最近遇到的都是屬於這種的 .........

動態訂閱

文章精選

文章搜尋

誰來我家

參觀人氣

  • 本日人氣:
  • 累積人氣: