php获取中文首字母
作者:admin 日期:2012-10-13
汉字、英文、数字均适用。
- function getfirstchar($s0){
- $s=iconv("UTF-8","gb2312", $s0);
- $asc=ord($s{0})*256+ord($s{1})-65536;
- if($asc>=-20319 and $asc<=-20284)return "A";
- if($asc>=-20283 and $asc<=-19776)return "B";
- if($asc>=-19775 and $asc<=-19219)return "C";
- if($asc>=-19218 and $asc<=-18711)return "D";
- if($asc>=-18710 and $asc<=-18527)return "E";
- if($asc>=-18526 and $asc<=-18240)return "F";
- if($asc>=-18239 and $asc<=-17923)return "G";
- if($asc>=-17922 and $asc<=-17418)return "H";
- if($asc>=-17417 and $asc<=-16475)return "J";
- if($asc>=-16474 and $asc<=-16213)return "K";
- if($asc>=-16212 and $asc<=-15641)return "L";
- if($asc>=-15640 and $asc<=-15166)return "M";
- if($asc>=-15165 and $asc<=-14923)return "N";
- if($asc>=-14922 and $asc<=-14915)return "O";
- if($asc>=-14914 and $asc<=-14631)return "P";
- if($asc>=-14630 and $asc<=-14150)return "Q";
- if($asc>=-14149 and $asc<=-14091)return "R";
- if($asc>=-14090 and $asc<=-13319)return "S";
- if($asc>=-13318 and $asc<=-12839)return "T";
- if($asc>=-12838 and $asc<=-12557)return "W";
- if($asc>=-12556 and $asc<=-11848)return "X";
- if($asc>=-11847 and $asc<=-11056)return "Y";
- if($asc>=-11055 and $asc<=-10247)return "Z";
- return false;
- }
php 汉字转化成 二进制 十进制 十六进制 数字
作者:admin 日期:2012-10-13
直接上代码
- <?php
- /**
- * 把一个汉字转为unicode的通用函数,不依赖任何库,和别的自定义函数,但有条件
- * 条件:本文件以及函数的输入参数应该用utf-8编码,不然要加函数转换
- * 其实亦可轻易编写反向转换的函数,甚至不局限于汉字,奇怪为什么PHP没有现成函数
- * @author xieye
- *
- * @param {string} $word 必须是一个汉字,或代表汉字的一个数组(用str_split切割过)
- * @return {string} 一个十进制unicode码,如4f60,代表汉字 “你”
- *
- * @example
- echo "你 ".getUnicodeFromOneUTF8("你");
- echo "<br />";
- echo "好 ".getUnicodeFromOneUTF8("好");
- echo "<br />";
- echo "你好 ".getUnicodeFromOneUTF8("你好");
- echo "<br />";
- echo "你好吗 ".getUnicodeFromOneUTF8("你好吗");
- 你 20320
- 好 22909
- 你好 251503099357000
- 你好吗 4.21952182258E+21
- */
- function getUnicodeFromOneUTF8($word) {
- //获取其字符的内部数组表示,所以本文件应用utf-8编码!
- if (is_array( $word))
- $arr = $word;
- else
- $arr = str_split($word);
- //此时,$arr应类似array(228, 189, 160)
- //定义一个空字符串存储
- $bin_str = '';
- //转成数字再转成二进制字符串,最后联合起来。
- foreach ($arr as $value)
- $bin_str .= decbin(ord($value));
- //此时,$bin_str应类似111001001011110110100000,如果是汉字"你"
- //正则截取
- $bin_str = preg_replace('/^.{4}(.{4}).{2}(.{6}).{2}(.{6})$/','$1$2$3', $bin_str);
- //此时, $bin_str应类似0100111101100000,如果是汉字"你"
- return bindec($bin_str);
- //返回类似20320, 汉字"你"
- //return dechex(bindec($bin_str));
- //如想返回十六进制4f60,用这句
- }
- echo "你 ".getUnicodeFromOneUTF8("你");
- echo "<br />";
- echo "好 ".getUnicodeFromOneUTF8("好");
- echo "<br />";
- echo "你好 ".getUnicodeFromOneUTF8("你好");
- echo "<br />";
- echo "你好吗 ".getUnicodeFromOneUTF8("你好吗");
- exit;
- ?>
来源网址:http://blog.csdn.net/nailwl/article/details/5520068
php随机中文字符串
作者:admin 日期:2012-10-13
中文验证码中需要用到的:
- function create_random_value() {
- $rand_value = '';
- $chinese = '的国在人了有中是年和大业不为发会工经上地市要个产这出行作生家以成到日民来我部对进多全建他公开们场展时理新方主企资实学报制政济用同于法高长现本月定化加动合品重关机分力自外者区能设后就等体下万元社过前面';
- for($i=1;$i<=4;$i++){
- $n=mt_rand(0,(mb_strlen($chinese,'utf-8')-1));
- $char=mb_substr($chinese, $n, 1, 'utf-8');
- $rand_value .= $char;
- }
- return $rand_value;
- }
原创代码,转载请注明出处!
php图像函数imagettftext用法
作者:admin 日期:2012-10-13
功能:imagettftext — 用 TrueType 字体向图像写入文本
格式:array imagettftext ( resource $image , float $size , float $angle , int $x , int $y , int $color , string $fontfile , string $text )
参数:
image
图像资源。见 imagecreatetruecolor()。
size
字体大小。根据 GD 版本不同,应该以像素大小指定(GD1)或点大小(GD2)。
angle
角度制表示的角度,0 度为从左向右读的文本。更高数值表示逆时针旋转。例如 90 度表示从下向上读的文本。
x
由 x,y 所表示的坐标定义了第一个字符的基本点(大概是字符的左下角)。这和 imagestring() 不同,其 x,y 定义了第一个字符的左上角。例如 "top left" 为 0, 0。
y
Y 坐标。它设定了字体基线的位置,不是字符的最底端。
color
颜色索引。使用负的颜色索引值具有关闭防锯齿的效果。见 imagecolorallocate()。
fontfile
是想要使用的 TrueType 字体的路径。 根据 PHP 所使用的 GD 库的不同,当 fontfile 没有以 / 开头时则 .ttf 将被加到文件名之后并且会在库定义字体路径中尝试搜索该文件名。 当使用的 GD 库版本低于 2.0.18 时,一个空格字符 而不是分号将被用来作为不同字体文件的“路径分隔符”。不小心使用了此特性将会导致一条警告信息:Warning: Could not find/open font。对受影响的版本来说唯一解决方案就是将字体移动到不包含空格的路径中去。
很多情况下字体都放在脚本的同一个目录下。下面的小技巧可以减轻包含的问题。
- <?php
- // Set the enviroment variable for GD
- putenv('GDFONTPATH=' . realpath('.'));
- // Name the font to be used (note the lack of the .ttf extension)
- $font = 'SomeFont';
- ?>
text
文本字符串。 可以包含十进制数字化字符表示(形式为:€)来访问字体中超过位置 127 的字符。UTF-8 编码的字符串可以直接传递。 如果字符串中使用的某个字符不被字体支持,一个空心矩形将替换该字符。
imagettftext() 返回一个含有 8 个单元的数组表示了文本外框的四个角,顺序为坐下角,右下角,右上角,左上角。这些点是相对于文本的而和角度无关,因此“左上角”指的是以水平方向看文字时其左上角。
Godaddy国外空间asp发表文章时间不同步问题解决
作者:admin 日期:2012-10-13
广告位