'; var $_auTypeDBuiltInIcons; function setOutputFormat($format = ''){ $this->_format = $format; } function &singleton(){ if(!isset($GLOBALS['AU_BUILT-IN_CONVERTOR'])){ $GLOBALS['AU_BUILT-IN_CONVERTOR'] =& new AuBuiltInIconConvertor(); /* 参考 http://www.au.kddi.com/ezfactory/tec/spec/3.html タイプD EZweb絵文字一覧【タイプD】 [ダウンロード: PDF形式1.4MB] http://www.au.kddi.com/ezfactory/tec/spec/img/typeD.pdf */ $GLOBALS['AU_BUILT-IN_CONVERTOR']->_auTypeDBuiltInIcons = array( 1 => 'F659', 2 => 'F65A', 3 => 'F65B', 4 => 'F748', 5 => 'F749', 6 => 'F74A', 7 => 'F74B', 8 => 'F74C', 9 => 'F74D', 10 => 'F74E', 11 => 'F74F', 12 => 'F69A', 13 => 'F6EA', 14 => 'F796', 15 => 'F65E', 16 => 'F65F', 17 => 'F750', 18 => 'F751', 19 => 'F752', 20 => 'F753', 21 => 'F754', 22 => 'F755', 23 => 'F756', 24 => 'F757', 25 => 'F797', 26 => 'F758', 27 => 'F759', 28 => 'F75A', 29 => 'F75B', 30 => 'F75C', 31 => 'F75D', 32 => 'F75E', 33 => 'F75F', 34 => 'F760', 35 => 'F761', 36 => 'F762', 37 => 'F763', 38 => 'F764', 39 => 'F765', 40 => 'F766', 41 => 'F767', 42 => 'F768', 43 => 'F769', 44 => 'F660', 45 => 'F693', 46 => 'F7B1', 47 => 'F661', 48 => 'F6EB', 49 => 'F77C', 50 => 'F6D3', 51 => 'F7B2', 52 => 'F69B', 53 => 'F6EC', 54 => 'F76A', 55 => 'F76B', 56 => 'F77D', 57 => 'F798', 58 => 'F654', 59 => 'F77E', 60 => 'F662', 61 => 'F76C', 62 => 'F76D', 63 => 'F76E', 64 => 'F76F', 65 => 'F69C', 66 => 'F770', 67 => 'F780', 68 => 'F6D4', 69 => 'F663', 70 => 'F771', 71 => 'F772', 72 => 'F6ED', 73 => 'F773', 74 => 'F6B8', 75 => 'F640', 76 => 'F644', 77 => 'F64E', 78 => 'F6B9', 79 => 'F7AC', 80 => 'F6D5', 81 => 'F774', 82 => 'F775', 83 => 'F674', 84 => 'F7AD', 85 => 'F7B3', 86 => 'F6D6', 87 => 'F799', 88 => 'F776', 89 => 'F777', 90 => 'F790', 91 => 'F675', 92 => 'F781', 93 => 'F7B4', 94 => 'F6EE', 95 => 'F664', 96 => 'F694', 97 => 'F782', 98 => 'F65C', 99 => 'F642', 100 => 'F783', 101 => 'F784', 102 => 'F785', 103 => 'F786', 104 => 'F6EF', 105 => 'F787', 106 => 'F676', 107 => 'F665', 108 => 'F6FA', 109 => 'F79A', 110 => 'F6F0', 111 => 'F79B', 112 => 'F684', 113 => 'F6BD', 114 => 'F79C', 115 => 'F79D', 116 => 'F6D7', 117 => 'F778', 118 => 'F779', 119 => 'F6F1', 120 => 'F6F2', 121 => 'F788', 122 => 'F677', 123 => 'F79E', 124 => 'F6F3', 125 => 'F68A', 126 => 'F79F', 127 => 'F791', 128 => 'F792', 129 => 'F6F4', 130 => 'F7A0', 131 => 'F789', 132 => 'F77A', 133 => 'F6A7', 134 => 'F6BA', 135 => 'F7A1', 136 => 'F77B', 137 => 'F78A', 138 => 'F6F5', 139 => 'F7A2', 140 => 'F6D8', 141 => 'F6D9', 142 => 'F78B', 143 => 'F678', 144 => 'F6A8', 145 => 'F6F6', 146 => 'F685', 147 => 'F78C', 148 => 'F68B', 149 => 'F679', 150 => 'F7A3', 151 => 'F7AE', 152 => 'F7A4', 153 => 'F7AF', 154 => 'F7B0', 155 => 'F6F7', 156 => 'F686', 157 => 'F78D', 158 => 'F67A', 159 => 'F793', 160 => 'F69D', 161 => 'F7A5', 162 => 'F7A6', 163 => 'F6DA', 164 => 'F7A7', 165 => 'F6F8', 166 => 'F6F9', 167 => 'F666', 168 => 'F68C', 169 => 'F68D', 170 => 'F6A1', 171 => 'F7A8', 172 => 'F68E', 173 => 'F7A9', 174 => 'F7AA', 175 => 'F7AB', 176 => 'F655', 177 => 'F656', 178 => 'F657', 179 => 'F658', 180 => 'F6FB', 181 => 'F6FC', 182 => 'F740', 183 => 'F741', 184 => 'F742', 185 => 'F743', 186 => 'F744', 187 => 'F745', 188 => 'F746', 189 => 'F747', 190 => 'F641', 191 => 'F65D', 192 => 'F667', 193 => 'F668', 194 => 'F669', 195 => 'F66A', 196 => 'F66B', 197 => 'F66C', 198 => 'F66D', 199 => 'F66E', 200 => 'F66F', 201 => 'F670', 202 => 'F671', 203 => 'F672', 204 => 'F673', 205 => 'F67B', 206 => 'F67C', 207 => 'F67D', 208 => 'F67E', 209 => 'F680', 210 => 'F681', 211 => 'F682', 212 => 'F683', 213 => 'F78E', 214 => 'F78F', 215 => 'F687', 216 => 'F688', 217 => 'F689', 218 => 'F643', 219 => 'F68F', 220 => 'F690', 221 => 'F691', 222 => 'F692', 223 => 'F645', 224 => 'F695', 225 => 'F696', 226 => 'F697', 227 => 'F698', 228 => 'F699', 229 => 'F646', 230 => 'F647', 231 => 'F69E', 232 => 'F69F', 233 => 'F6A0', 234 => 'F6A2', 235 => 'F6A3', 236 => 'F6A4', 237 => 'F6A5', 238 => 'F6A6', 239 => 'F6A9', 240 => 'F6AA', 241 => 'F6AB', 242 => 'F6AC', 243 => 'F6AD', 244 => 'F6AE', 245 => 'F6AF', 246 => 'F648', 247 => 'F6B0', 248 => 'F6B1', 249 => 'F6B2', 250 => 'F6B3', 251 => 'F6B4', 252 => 'F6B5', 253 => 'F6B6', 254 => 'F6B7', 255 => 'F6BB', 256 => 'F6BC', 257 => 'F649', 258 => 'F64A', 259 => 'F64B', 260 => 'F64C', 261 => 'F64D', 262 => 'F6BE', 263 => 'F6BF', 264 => 'F6C0', 265 => 'F64F', 266 => 'F650', 267 => 'F651', 268 => 'F652', 269 => 'F653', 270 => 'F6C1', 271 => 'F6C2', 272 => 'F6C3', 273 => 'F6C4', 274 => 'F6C5', 275 => 'F6C6', 276 => 'F6C7', 277 => 'F6C8', 278 => 'F6C9', 279 => 'F6CA', 280 => 'F6CB', 281 => 'F6CC', 282 => 'F6CD', 283 => 'F6CE', 284 => 'F6CF', 285 => 'F6D0', 286 => 'F6D1', 287 => 'F6D2', 288 => 'F6DB', 289 => 'F6DC', 290 => 'F6DD', 291 => 'F6DE', 292 => 'F6DF', 293 => 'F6E0', 294 => 'F6E1', 295 => 'F6E2', 296 => 'F6E3', 297 => 'F6E4', 298 => 'F794', 299 => 'F795', 300 => 'F6E5', 301 => 'F6E6', 302 => 'F6E7', 303 => 'F6E8', 304 => 'F6E9', 305 => 'F7B5', 306 => 'F7B6', 307 => 'F7B7', 308 => 'F7B8', 309 => 'F7B9', 310 => 'F7BA', 311 => 'F7BB', 312 => 'F7BC', 313 => 'F7BD', 314 => 'F7BE', 315 => 'F7BF', 316 => 'F7C0', 317 => 'F7C1', 318 => 'F7C2', 319 => 'F7C3', 320 => 'F7C4', 321 => 'F7C5', 322 => 'F7C6', 323 => 'F7C7', 324 => 'F7C8', 325 => 'F7C9', 326 => 'F7CA', 327 => 'F7CB', 328 => 'F7CC', 329 => 'F7CD', 330 => 'F7CE', 331 => 'F7CF', 332 => 'F7D0', 333 => 'F7D1', 334 => 'F7E5', 335 => 'F7E6', 336 => 'F7E7', 337 => 'F7E8', 338 => 'F7E9', 339 => 'F7EA', 340 => 'F7EB', 341 => 'F7EC', 342 => 'F7ED', 343 => 'F7EE', 344 => 'F7EF', 345 => 'F7F0', 346 => 'F7F1', 347 => 'F7F2', 348 => 'F7F3', 349 => 'F7F4', 350 => 'F7F5', 351 => 'F7F6', 352 => 'F7F7', 353 => 'F7F8', 354 => 'F7F9', 355 => 'F7FA', 356 => 'F7FB', 357 => 'F7FC', 358 => 'F340', 359 => 'F341', 360 => 'F342', 361 => 'F343', 362 => 'F344', 363 => 'F345', 364 => 'F346', 365 => 'F347', 366 => 'F348', 367 => 'F349', 368 => 'F34A', 369 => 'F34B', 370 => 'F34C', 371 => 'F34D', 372 => 'F34E', 342 => 'F7ED', 343 => 'F7EE', 344 => 'F7EF', 345 => 'F7F0', 346 => 'F7F1', 347 => 'F7F2', 348 => 'F7F3', 349 => 'F7F4', 350 => 'F7F5', 351 => 'F7F6', 352 => 'F7F7', 353 => 'F7F8', 354 => 'F7F9', 355 => 'F7FA', 356 => 'F7FB', 357 => 'F7FC', 358 => 'F340', 359 => 'F341', 360 => 'F342', 361 => 'F343', 362 => 'F344', 363 => 'F345', 364 => 'F346', 365 => 'F347', 366 => 'F348', 367 => 'F349', 368 => 'F34A', 369 => 'F34B', 370 => 'F34C', 371 => 'F34D', 372 => 'F34E', 373 => 'F34F', 374 => 'F350', 375 => 'F351', 376 => 'F352', 377 => 'F353', 378 => 'F354', 379 => 'F355', 380 => 'F356', 381 => 'F357', 382 => 'F358', 383 => 'F359', 384 => 'F35A', 385 => 'F35B', 386 => 'F35C', 387 => 'F35D', 388 => 'F35E', 389 => 'F35F', 390 => 'F360', 391 => 'F361', 392 => 'F362', 393 => 'F363', 394 => 'F364', 395 => 'F365', 396 => 'F366', 397 => 'F367', 398 => 'F368', 399 => 'F369', 400 => 'F36A', 401 => 'F36B', 402 => 'F36C', 403 => 'F36D', 404 => 'F36E', 405 => 'F36F', 406 => 'F370', 407 => 'F371', 408 => 'F372', 409 => 'F373', 410 => 'F374', 411 => 'F375', 412 => 'F376', 413 => 'F377', 414 => 'F378', 415 => 'F379', 416 => 'F37A', 417 => 'F37B', 418 => 'F37C', 419 => 'F37D', 420 => 'F37E', 421 => 'F380', 422 => 'F381', 423 => 'F382', 424 => 'F383', 425 => 'F384', 426 => 'F385', 427 => 'F386', 428 => 'F387', 429 => 'F388', 430 => 'F389', 431 => 'F38A', 432 => 'F38B', 433 => 'F38C', 434 => 'F38D', 435 => 'F38E', 436 => 'F38F', 437 => 'F390', 438 => 'F391', 439 => 'F392', 440 => 'F393', 441 => 'F394', 442 => 'F395', 443 => 'F396', 444 => 'F397', 445 => 'F398', 446 => 'F399', 447 => 'F39A', 448 => 'F39B', 449 => 'F39C', 450 => 'F39D', 451 => 'F39E', 452 => 'F39F', 453 => 'F3A0', 454 => 'F3A1', 455 => 'F3A2', 456 => 'F3A3', 457 => 'F3A4', 458 => 'F3A5', 459 => 'F3A6', 460 => 'F3A7', 461 => 'F3A8', 462 => 'F3A9', 463 => 'F3AA', 464 => 'F3AB', 465 => 'F3AC', 466 => 'F3AD', 467 => 'F3AE', 468 => 'F3AF', 469 => 'F3B0', 470 => 'F3B1', 471 => 'F3B2', 472 => 'F3B3', 473 => 'F3B4', 474 => 'F3B5', 475 => 'F3B6', 476 => 'F3B7', 477 => 'F3B8', 478 => 'F3B9', 479 => 'F3BA', 480 => 'F3BB', 481 => 'F3BC', 482 => 'F3BD', 483 => 'F3BE', 484 => 'F3BF', 485 => 'F3C0', 486 => 'F3C1', 487 => 'F3C2', 488 => 'F3C3', 489 => 'F3C4', 490 => 'F3C5', 491 => 'F3C6', 492 => 'F3C7', 493 => 'F3C8', 494 => 'F3C9', 495 => 'F3CA', 496 => 'F3CB', 497 => 'F3CC', 498 => 'F3CD', 499 => 'F3CE', 500 => 'F7D2', 501 => 'F7D3', 502 => 'F7D4', 503 => 'F7D5', 504 => 'F7D6', 505 => 'F7D7', 506 => 'F7D8', 507 => 'F7D9', 508 => 'F7DA', 509 => 'F7DB', 510 => 'F7DC', 511 => 'F7DD', 512 => 'F7DE', 513 => 'F7DF', 514 => 'F7E0', 515 => 'F7E1', 516 => 'F7E2', 517 => 'F7E3', 518 => 'F7E4', 700 => 'F3CF', 701 => 'F3D0', 702 => 'F3D1', 703 => 'F3D2', 704 => 'F3D3', 705 => 'F3D4', 706 => 'F3D5', 707 => 'F3D6', 708 => 'F3D7', 709 => 'F3D8', 710 => 'F3D9', 711 => 'F3DA', 712 => 'F3DB', 713 => 'F3DC', 714 => 'F3DD', 715 => 'F3DE', 716 => 'F3DF', 717 => 'F3E0', 718 => 'F3E1', 719 => 'F3E2', 720 => 'F3E3', 721 => 'F3E4', 722 => 'F3E5', 723 => 'F3E6', 724 => 'F3E7', 725 => 'F3E8', 726 => 'F3E9', 727 => 'F3EA', 728 => 'F3EB', 729 => 'F3EC', 730 => 'F3ED', 731 => 'F3EE', 732 => 'F3EF', 733 => 'F3F0', 734 => 'F3F1', 735 => 'F3F2', 736 => 'F3F3', 737 => 'F3F4', 738 => 'F3F5', 739 => 'F3F6', 740 => 'F3F7', 741 => 'F3F8', 742 => 'F3F9', 743 => 'F3FA', 744 => 'F3FB', 745 => 'F3FC', 746 => 'F440', 747 => 'F441', 748 => 'F442', 749 => 'F443', 750 => 'F444', 751 => 'F445', 752 => 'F446', 753 => 'F447', 754 => 'F448', 755 => 'F449', 756 => 'F44A', 757 => 'F44B', 758 => 'F44C', 759 => 'F44D', 760 => 'F44E', 761 => 'F44F', 762 => 'F450', 763 => 'F451', 764 => 'F452', 765 => 'F453', 766 => 'F454', 767 => 'F455', 768 => 'F456', 769 => 'F457', 770 => 'F458', 771 => 'F459', 772 => 'F45A', 773 => 'F45B', 774 => 'F45C', 775 => 'F45D', 776 => 'F45E', 777 => 'F45F', 778 => 'F460', 779 => 'F461', 780 => 'F462', 781 => 'F463', 782 => 'F464', 783 => 'F465', 784 => 'F466', 785 => 'F467', 786 => 'F468', 787 => 'F469', 788 => 'F46A', 789 => 'F46B', 790 => 'F46C', 791 => 'F46D', 792 => 'F46E', 793 => 'F46F', 794 => 'F470', 795 => 'F471', 796 => 'F472', 797 => 'F473', 798 => 'F474', 799 => 'F475', 800 => 'F476', 801 => 'F477', 802 => 'F478', 803 => 'F479', 804 => 'F47A', 805 => 'F47B', 806 => 'F47C', 807 => 'F47D', 808 => 'F47E', 809 => 'F480', 810 => 'F481', 811 => 'F482', 812 => 'F483', 813 => 'F484', 814 => 'F485', 815 => 'F486', 816 => 'F487', 817 => 'F488', 818 => 'F489', 819 => 'F48A', 820 => 'F48B', 821 => 'F48C', 822 => 'F48D' ); } return $GLOBALS['AU_BUILT-IN_CONVERTOR']; } function convert($text){ $unPackedNumberArray = unpack("C*", $text); $count = 0; $returnString = ''; while ($firstByte = @$unPackedNumberArray[++$count]) { if(!isset($unPackedNumberArray[($count + 1)])){ $returnString .= pack("C", $firstByte); return $returnString; } switch ($firstByte) { //AU Built-In Iconの可能性 case 0xF3: case 0xF4: case 0xF6: case 0xF7: $secondByte = $unPackedNumberArray[($count + 1)]; $hexString = dechex($firstByte) . dechex($secondByte); foreach ($this->_auTypeDBuiltInIcons as $auBuiltInIconID => $sjisHex){ //AU Built-In Icon if(strtoupper($hexString) == $sjisHex){ $returnString .= sprintf($this->_format, $auBuiltInIconID); $count++; } } break; default: /* 参考 http://euc.jp/i18n/charcode.ja.html 1.2 シフトJIS(MS漢字コード) http://www.kishugiken.co.jp/cn/code04c.html シフトJISコード表 */ if( ((0x81 <= $firstByte) && ($firstByte <= 0x9F)) || ((0xE0 <= $firstByte) && ($firstByte <= 0xFC)) ){ //マルチバイト $secondByte = $unPackedNumberArray[++$count]; $returnString .= pack("C", $firstByte) . pack("C", $secondByte); }else{ //シングルバイト $returnString .= pack("C", $firstByte); } break; } } return $returnString; } } ?> convert('AUのSJIS絵文字が含まれている文字列を設定して下さい。のフォーマットに従って絵文字を変換します'); ?>