وقتی سخن از فایل درکامپیوتر به میان می‌آید همه ما به یاد آیکون‌های رنگارنگ سیستم عامل خود می‌افتیم، در حالی که فایل‌ها چیزی غیر از یک دنباله از صفرها و یک‌ها نیستند، یک فایل وقتی روی هارد شما ذخیره می‌شود بصورت یک دنباله صفر و یک ذخیره می‌شود. تصاویر نیز در کامپیوتر از اینچنین هستند و یک تصویر وقتی روی هارد شما قرار دارد تنها از یک و صفر تشکیل شده است، به تصویر (فایل) عبارت دیگر بصورت یک عدد در مبنای ۲ ذخیره می‌شود. کدهای `base64` نمایش محتوای یک فایل در مبنای ۶۴ هستند. ساختار زیر نمونه یک کد `base64` برای یک تصویر است. بخش نخست این کد (`data:image/png;base64,`) مشخص کننده نوع فایل است که در این مثال یک فایل `png` است. بخش دوم هم همان محتوای فایل در مبنای ۶۴ است. هر کاراکتر در بخش دوم متناظر با یک عدد است، برای مثال کاراکتر `i` مترادف عدد `34` است، لیست کامل اعدداد متناظر با هرکاراکتر در انتها آورده شده است

``` data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAA ....EpXLlOdmsKIRIiOjBDs7fPK+BfvMoF8B0JibwAAAABJRU5ErkJggg==
<p>برای تبدیل دوباره این کد‌ها به فایل در `PHP` می‌بایست بخش اول آن که مشخص کننده نوع فایل است را حذف کرده و سپس آنها بصورت بصورت باینری درون فایل ذخیره کنیم</p>

function writeBase64($base64_string, $output_file) {
$ifp = fopen($output_file, "wb");

$data = explode(',', $base64_string);

fwrite($ifp, base64_decode($data[1])); 
fclose($ifp); 

return $output_file; 

}



<p>جدول زیر نشان‌دهنده شماره هر کاراکتر در کدبندی `base64` است.
</p>
<table class="wikitable" style="direction:ltr;text-align:center">
<tbody><tr>
<th scope="col">Value</th>
<th scope="col">Char</th>
<td rowspan="17">&nbsp;</td>
<th scope="col">Value</th>
<th scope="col">Char</th>
<td rowspan="17">&nbsp;</td>
<th scope="col">Value</th>
<th scope="col">Char</th>
<td rowspan="17">&nbsp;</td>
<th scope="col">Value</th>
<th scope="col">Char</th>
</tr>
<tr>
<td>0</td>
<td>`A`</td>
<td>16</td>
<td>`Q`</td>
<td>32</td>
<td>`g`</td>
<td>48</td>
<td>`w`</td>
</tr>
<tr>
<td>1</td>
<td>`B`</td>
<td>17</td>
<td>`R`</td>
<td>33</td>
<td>`h`</td>
<td>49</td>
<td>`x`</td>
</tr>
<tr>
<td>2</td>
<td>`C`</td>
<td>18</td>
<td>`S`</td>
<td>34</td>
<td>`i`</td>
<td>50</td>
<td>`y`</td>
</tr>
<tr>
<td>3</td>
<td>`D`</td>
<td>19</td>
<td>`T`</td>
<td>35</td>
<td>`j`</td>
<td>51</td>
<td>`z`</td>
</tr>
<tr>
<td>4</td>
<td>`E`</td>
<td>20</td>
<td>`U`</td>
<td>36</td>
<td>`k`</td>
<td>52</td>
<td>`0`</td>
</tr>
<tr>
<td>5</td>
<td>`F`</td>
<td>21</td>
<td>`V`</td>
<td>37</td>
<td>`l`</td>
<td>53</td>
<td>`1`</td>
</tr>
<tr>
<td>6</td>
<td>`G`</td>
<td>22</td>
<td>`W`</td>
<td>38</td>
<td>`m`</td>
<td>54</td>
<td>`2`</td>
</tr>
<tr>
<td>7</td>
<td>`H`</td>
<td>23</td>
<td>`X`</td>
<td>39</td>
<td>`n`</td>
<td>55</td>
<td>`3`</td>
</tr>
<tr>
<td>8</td>
<td>`I`</td>
<td>24</td>
<td>`Y`</td>
<td>40</td>
<td>`o`</td>
<td>56</td>
<td>`4`</td>
</tr>
<tr>
<td>9</td>
<td>`J`</td>
<td>25</td>
<td>`Z`</td>
<td>41</td>
<td>`p`</td>
<td>57</td>
<td>`5`</td>
</tr>
<tr>
<td>10</td>
<td>`K`</td>
<td>26</td>
<td>`a`</td>
<td>42</td>
<td>`q`</td>
<td>58</td>
<td>`6`</td>
</tr>
<tr>
<td>11</td>
<td>`L`</td>
<td>27</td>
<td>`b`</td>
<td>43</td>
<td>`r`</td>
<td>59</td>
<td>`7`</td>
</tr>
<tr>
<td>12</td>
<td>`M`</td>
<td>28</td>
<td>`c`</td>
<td>44</td>
<td>`s`</td>
<td>60</td>
<td>`8`</td>
</tr>
<tr>
<td>13</td>
<td>`N`</td>
<td>29</td>
<td>`d`</td>
<td>45</td>
<td>`t`</td>
<td>61</td>
<td>`9`</td>
</tr>
<tr>
<td>14</td>
<td>`O`</td>
<td>30</td>
<td>`e`</td>
<td>46</td>
<td>`u`</td>
<td>62</td>
<td>`+`</td>
</tr>
<tr>
<td>15</td>
<td>`P`</td>
<td>31</td>
<td>`f`</td>
<td>47</td>
<td>`v`</td>
<td>63</td>
<td>`/`</td>
</tr>
</tbody></table>