Javascript 的 URL 函數編碼,與 PHP 對應解碼函數
單向
Javascript: escape() 等於 PHP: rawurlencode()
Javascript: unescape() 等於 PHP: rawurldecode()
雙向
Javascript: encodeURI() 相對於 PHP: rawurlencode()
Javascript: decodeURI() 相對於 PHP: rawurldecode()
2010年1月11日 星期一
[PHP] 取得圖片寬高尺寸
PHP 函式
getimagesize — Get the size of an image
Note: This function does not require the GD image library.
(Server 必須要安裝 GD 函式庫)
呼叫方式:
array getimagesize ( string $filename [, array &$imageinfo ] )
傳回結果:
Array ( [0] => 450 [1] => 803 [2] => 2 [3] => width="450" height="803" [bits] => 8 [channels] => 3 [mime] => image/jpeg )
2009年11月15日 星期日
[FLEX] 四捨五入
用 Math.round( ) 進行四捨五入, Math.floor( ) 和 Math.ceil( ) 進行上下近似值。NumberUtilities.round( ) 方法可自訂取值。
很多情況我們需要得到整數部分而不是帶有小數的浮點數。
比如計算出結果為 3.9999999 ,期望的結果應該是4.0。
Math.round( ) 方法進行四捨五入計算:
trace(Math.round(204.499)); // 顯示: 204
trace(Math.round(401.5)); // 顯示: 402
Math.floor( ) 方法去掉小數部分,Math.ceil( ) 方法去掉小數部分後自動加1:
trace(Math.floor(204.99)); // 顯示: 204
trace(Math.ceil(401.01)); // 顯示: 402
如果我想要把90.337 四捨五入到 90.34,可以這麼寫:
trace (Math.round(90.337 / .01) * .01); //顯示: 9.34
trace (Math.round(92.5 / 5) * 5); // 顯示: 95
trace (Math.round(92.5 / 10) * 10); // 顯示: 90
很多情況我們需要得到整數部分而不是帶有小數的浮點數。
比如計算出結果為 3.9999999 ,期望的結果應該是4.0。
Math.round( ) 方法進行四捨五入計算:
trace(Math.round(204.499)); // 顯示: 204
trace(Math.round(401.5)); // 顯示: 402
Math.floor( ) 方法去掉小數部分,Math.ceil( ) 方法去掉小數部分後自動加1:
trace(Math.floor(204.99)); // 顯示: 204
trace(Math.ceil(401.01)); // 顯示: 402
如果我想要把90.337 四捨五入到 90.34,可以這麼寫:
trace (Math.round(90.337 / .01) * .01); //顯示: 9.34
trace (Math.round(92.5 / 5) * 5); // 顯示: 95
trace (Math.round(92.5 / 10) * 10); // 顯示: 90
2009年11月12日 星期四
[PHP] 去除斷行、空白字元方法
移除斷行字元 :
移除空白字元 :
原文出處:
http://uiop7890.pixnet.net/blog/post/22872252
//利用正規表示式將內容的斷行(\r\n)字元去除
preg_replace( "/\s/", "" , $content );移除空白字元 :
// 移除前後空白字
$str = trim($str);// 移除重覆的空白
$str = preg_replace('/\s(?=\s)/', '', $str);// 移除非空白的間距變成一般的空白
$str = preg_replace('/[\n\r\t]/', ' ', $str);原文出處:
http://uiop7890.pixnet.net/blog/post/22872252
2009年11月10日 星期二
[PHP] SimpleXML 和 DOM 的區別
SimpleXML:
SimpleXML 是另外一種 XML解析方法。SimpleXML 擴展需要用到 PHP5 並包括內置的 XPath 支持。SimpleXML 最適合處理不複雜的、基本的 XML 資料。如果 XML 文檔不是很複雜、層次不深、沒有混合內容,則與 DOM 相比 SimpleXML 更簡單,正如其名稱所暗示的那樣。如果處理的文檔結構是已知的,就會更加直觀。
SimpleXML 具有 DOM 的很多優點,但是編碼更加簡單。它允許輕鬆地訪問 XML 樹,具有內置的驗證機制和 XPath 支援,能夠與 DOM 交互操作,為其提供讀寫 XML 文檔的支援。可以簡單迅速地處理使用 SimpleXML 解析的文檔。但是要記住,和 DOM 一樣,SimpleXML 的易用性和靈活性的代價也是無法向記憶體中載入大型 XML 檔案。
DOM:
根據 W3C 的定義,DOM 標準是 “……一種平臺和語言中立的介面,能夠讓程式和腳本動態地訪問和更新文檔的內容、結構和樣式。
DOM 是基於樹的解析器。DOM 很容易理解和使用,因為其記憶體結構與原始 XML 文檔相似。DOM 通過創建物件樹來向應用程式傳遞資訊,它完全複製了 XML 檔的元素樹,每個 XML 元素都是樹上的一個節點。DOM 是一種 W3C 標準,由於和其他程式設計語言的一致性,對於開發人員來說,為 DOM 增加了不少權威性。因為 DOM 要創建整個文檔的樹,要佔用大量記憶體和處理器時間。
如果由於受設計或者其他因素的限制必須在解析器領域內耍點小聰明的話,則僅僅從靈活的角度來看應該選擇 DOM。使用 DOM 可以構建、修改、查詢、驗證和轉換 XML 文檔。可以利用所有的 DOM 方法和屬性。多數 DOM level 2 方法的實現都有適當的屬性支援。由於非凡的靈活性,使用 DOM 可以解析任意複雜的文檔。但是要記住,如果要把很大的 XML 文檔一次載入到記憶體中,則取得靈活性的代價相當高昂。
SimpleXML 是另外一種 XML解析方法。SimpleXML 擴展需要用到 PHP5 並包括內置的 XPath 支持。SimpleXML 最適合處理不複雜的、基本的 XML 資料。如果 XML 文檔不是很複雜、層次不深、沒有混合內容,則與 DOM 相比 SimpleXML 更簡單,正如其名稱所暗示的那樣。如果處理的文檔結構是已知的,就會更加直觀。
SimpleXML 具有 DOM 的很多優點,但是編碼更加簡單。它允許輕鬆地訪問 XML 樹,具有內置的驗證機制和 XPath 支援,能夠與 DOM 交互操作,為其提供讀寫 XML 文檔的支援。可以簡單迅速地處理使用 SimpleXML 解析的文檔。但是要記住,和 DOM 一樣,SimpleXML 的易用性和靈活性的代價也是無法向記憶體中載入大型 XML 檔案。
DOM:
根據 W3C 的定義,DOM 標準是 “……一種平臺和語言中立的介面,能夠讓程式和腳本動態地訪問和更新文檔的內容、結構和樣式。
DOM 是基於樹的解析器。DOM 很容易理解和使用,因為其記憶體結構與原始 XML 文檔相似。DOM 通過創建物件樹來向應用程式傳遞資訊,它完全複製了 XML 檔的元素樹,每個 XML 元素都是樹上的一個節點。DOM 是一種 W3C 標準,由於和其他程式設計語言的一致性,對於開發人員來說,為 DOM 增加了不少權威性。因為 DOM 要創建整個文檔的樹,要佔用大量記憶體和處理器時間。
如果由於受設計或者其他因素的限制必須在解析器領域內耍點小聰明的話,則僅僅從靈活的角度來看應該選擇 DOM。使用 DOM 可以構建、修改、查詢、驗證和轉換 XML 文檔。可以利用所有的 DOM 方法和屬性。多數 DOM level 2 方法的實現都有適當的屬性支援。由於非凡的靈活性,使用 DOM 可以解析任意複雜的文檔。但是要記住,如果要把很大的 XML 文檔一次載入到記憶體中,則取得靈活性的代價相當高昂。
[MSN] 強制更新破解
該死的 MSN 更新就更新,沒事來個"強制"更新,不更新就不讓你用,這也太不合理了吧!
所以上網查了有沒有解決方法,看來痛恨更新的人還真不在少數
以下是文章摘錄,詳細的破解方法請參閱
http://sptuner.blogspot.com/2009/09/2009916-msn.html
附註目前破解的版本代號資料如下
前兩碼改成「9.5」的方法在這個月(11月)好像失效了
要改成「14,0,8064,206」
所以,整個的編譯碼應該會轉變為如下
1 VERSIONINFO
FILEVERSION 14,0,8064,206
PRODUCTVERSION 14,0,8064,206
FILEOS 0x4
FILETYPE 0x1
{
BLOCK "StringFileInfo"
{
BLOCK "040904B0"
{
VALUE "CompanyName", "Microsoft Corporation"
VALUE "FileDescription", "Windows Live Messenger"
VALUE "FileVersion", "14.0.8064.0206"
VALUE "InternalName", "msnmsgr.exe"
VALUE "LegalCopyright", "Copyright (c) Microsoft Corporation. All rights reserved."
VALUE "OriginalFilename", "msnmsgr.exe"
VALUE "ProductName", "Messenger"
VALUE "ProductVersion", "14.0.8064.0206"
}
}
BLOCK "VarFileInfo"
{
VALUE "Translation", 0x0409 0x04B0
}
}
所以上網查了有沒有解決方法,看來痛恨更新的人還真不在少數
以下是文章摘錄,詳細的破解方法請參閱
http://sptuner.blogspot.com/2009/09/2009916-msn.html
附註目前破解的版本代號資料如下
前兩碼改成「9.5」的方法在這個月(11月)好像失效了
要改成「14,0,8064,206」
所以,整個的編譯碼應該會轉變為如下
1 VERSIONINFO
FILEVERSION 14,0,8064,206
PRODUCTVERSION 14,0,8064,206
FILEOS 0x4
FILETYPE 0x1
{
BLOCK "StringFileInfo"
{
BLOCK "040904B0"
{
VALUE "CompanyName", "Microsoft Corporation"
VALUE "FileDescription", "Windows Live Messenger"
VALUE "FileVersion", "14.0.8064.0206"
VALUE "InternalName", "msnmsgr.exe"
VALUE "LegalCopyright", "Copyright (c) Microsoft Corporation. All rights reserved."
VALUE "OriginalFilename", "msnmsgr.exe"
VALUE "ProductName", "Messenger"
VALUE "ProductVersion", "14.0.8064.0206"
}
}
BLOCK "VarFileInfo"
{
VALUE "Translation", 0x0409 0x04B0
}
}
2009年10月27日 星期二
[PHP] 採用 EX4 解析 XML 資料
PHP 解析 XML 資料時,除了可以用原有的 XML Parser 函式讀取之外,也可以利用目前當紅的 EX4(ECMAScript for XML) 方式來讀取,稱作 SimpleXML
簡單範例:
$xmlStr = <<<XML
<pets>
<pet>
<name>Bonzo</name>
<type>Dog</type>
</pet>
<pet>
<name>Fluffy</name>
<type>Cat</type>
</pet>
</pets>
XML;
$xml = new SimpleXMLElement( $xmlStr );
echo 'Name1: '.$xml->pet[0]->name."<br/>";
echo 'Name2: '.$xml->pet[1]->name."<br/>";
結果:
Name 1:Bonzo
Name 2:Fluffy
補充:
何謂 EX4 (ECMAScript for XML) ?
Firefox 1.5 is bring developers a simple extension to JavaScript that makes XML scripting very simple it’s called EX4 (ECMAScript for XML). E4X support is part of JavaScript 1.6, which is delivered with Firefox 1.5. IE developers might be familiar with XML support through the Microsoft MSXML2 library but E4X is much simpler and easier.
EX4 allows you to access XML document with similar syntax to XPath 1.0.
資料來源: http://www.jpkeisala.com/blog/2005/12/08/ex4_ecmascript_for_xml/
簡單範例:
$xmlStr = <<<XML
<pets>
<pet>
<name>Bonzo</name>
<type>Dog</type>
</pet>
<pet>
<name>Fluffy</name>
<type>Cat</type>
</pet>
</pets>
XML;
$xml = new SimpleXMLElement( $xmlStr );
echo 'Name1: '.$xml->pet[0]->name."<br/>";
echo 'Name2: '.$xml->pet[1]->name."<br/>";
結果:
Name 1:Bonzo
Name 2:Fluffy
補充:
何謂 EX4 (ECMAScript for XML) ?
Firefox 1.5 is bring developers a simple extension to JavaScript that makes XML scripting very simple it’s called EX4 (ECMAScript for XML). E4X support is part of JavaScript 1.6, which is delivered with Firefox 1.5. IE developers might be familiar with XML support through the Microsoft MSXML2 library but E4X is much simpler and easier.
EX4 allows you to access XML document with similar syntax to XPath 1.0.
資料來源: http://www.jpkeisala.com/blog/2005/12/08/ex4_ecmascript_for_xml/
訂閱:
文章 (Atom)