Home | 簡體中文 | 繁體中文 | 雜文 | 知乎專欄 | Github | OSChina 博客 | 雲社區 | 雲棲社區 | Facebook | Linkedin | 視頻教程 | 打賞(Donations) | About
知乎專欄多維度架構 微信號 netkiller-ebook | QQ群:128659835 請註明“讀者”

203.2. Uuencode

[注意]注意

uuencode不是MIME標準

application/x-uuencode

Uuencode 是將二進制檔案以文本檔案方式進行編碼表示、以利於基于文本傳輸環境中進行二進制檔案的傳輸/交換的編碼方法之一, 在郵件系統/二進制新聞組中使用頻率比較高,經常用於附件二進制檔案。

這種編碼的特徵是:每一行開頭用“M”標誌。

Uuencode的算法很簡單,編碼時它將3個字元順序放入一個 24 位的緩衝區,缺字元的地方補零,然後將緩衝區截斷成為 4 個部分,高位在先,每個部分 6 位,用下面的64個字元重新表示:



"`!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_"

解碼時它將4個字元分別轉換為4個6位字元後,截取有用的後六位放入一個 24 位的緩衝區,即得3個二進制代碼。

203.2.1. PHP uuencode

編碼:convert_uuencode()

		
<?php
$some_string = "test\ntext text\r\n";
echo convert_uuencode($some_string);
?>
		
		

解碼:convert_uuencode()

		
<?php
	$some_string = "This is an encoded string";
	$encode = convert_uuencode($some_string);
	echo convert_uudecode($encode);
?>