PHP ÕýÔòÅжÏÖÐÎÄ UTF 8 & GBK
UTF-8Æ¥Åä: ÔÚjavascriptÖУ¬ÒªÅжÏ×Ö·û´®ÊÇÖÐÎÄÊǺܼòµ¥µÄ¡£±ÈÈ磺
var str = "php±à³Ì";
if (/^[\u4e00-\u9fa5]+$/.test(str)) {
alert("¸Ã×Ö·û´®È«²¿ÊÇÖÐÎÄ");
}
else{
alert("¸Ã×Ö·û´®²»È«²¿ÊÇÖÐÎÄ");
} phpÖУ¬ÊÇÓÃ\x±íʾʮÁù½øÖÆÊý¾ÝµÄ¡£ÓÚÊÇ£¬±ä»»³ÉÈçϵĴúÂ룺
$str = "php±à³Ì";
if (preg_match("/^[\x4e00-\x9fa5]+$/",$str)) {
print("¸Ã×Ö·û´®È«²¿ÊÇÖÐÎÄ");
} else {
print("¸Ã×Ö·û´®²»È«²¿ÊÇÖÐÎÄ");
}
Ã²ËÆ²»±¨´íÁË£¬ÅжϵĽá¹ûÒ²ÕýÈ·£¬²»¹ý°Ñ$str»»³É“±à³Ì”Á½×Ö£¬½á¹ûÈ´»¹ÊÇÏÔʾ“¸Ã×Ö·û´®²»È«²¿ÊÇÖÐÎÄ”£¬¿´À´ÕâÑùµÄÅжϻ¹ÊDz»¹»×¼È·¡£ÖØÒª:²éÔÄÁË<¾«Í¨ÕýÔò±í´ïʽ>·¢ÏÖ,¶ÔÓÚ[\x4e00-\x9fa5]Õâ¿é¶«Î÷,×Ô¼º×öÒ»¸öÇ¿»¯µÄ½âÊÍ phpµÄÕýÔòÖÐ, [\x4e00-\x9fa5],Æäʵ¾ÍÊÇ ×Ö·ûºÍ×Ö·û×éµÄ¸ÅÄî, \x{hex},±í´ïÒ»¸ö16½øÖÆÊý, ÐèҪעÒâµÄÊÇhex ¿ÉÒÔÊÇ1-2λµÄ,Ò²¿ÉÒÔÊÇ4λµÄ,µ«ÊÇÈç¹ûÊÇ4λµÄ±ØÐë¼ÓÉÏ´óÀ¨ºÅ, ͬʱ,Èç¹ûÊÇ´óÓÚx{FF}µÄhex,±ØÐëºÍu ÐÞÊηûÁ¬ÓÃ,²»È»»á·Ç·¨³ö´í
ÍøÉÏÖ»ÄÜÕÒµ½Æ¥ÅäÈ«½Ç×Ö·ûµÄÕýÔò: ^[\x80-\xff]*^/ ,ÕâÀï¿ÉÒÔ²»¼Ó´óÀ¨ºÅ
[\u4e00-\u9fa5]¿ÉÒÔÆ¥ÅäÖÐÎÄ,µ«ÊÇPHPÓÖ²»Ö§³Ö
²»¹ý£¬¼ÈÈ»\x±íʾµÄÊ®Áù½øÖÆÊý¾Ý£¬ÎªÊ²Ã´ºÍjsÀï±ßÌṩµÄ·¶Î§\x4e00-\x9fa5²»Ò»ÑùÄØ£¿ÓÚÊÇÎҾͻ»³ÉÁËϱߵĴúÂë,·¢ÏÖÕæµÄ׼ȷÁË£º
$str = "php±à³Ì";
if (preg_match("/^[\x{4e00}-\x{9fa5}]+$/u",$str)) {
print("¸Ã×Ö·û´®È«²¿ÊÇÖÐÎÄ");
} else {
print("¸Ã×Ö·û´®²»È«²¿ÊÇÖÐÎÄ");
} ÖªµÀÁËphpÖÐutf-8±àÂëÏÂÓÃÕýÔò±í´ïʽƥÅ人×ÖµÄ×îÖÕÕýÈ·±í´ïʽ——/^[\x{4e00}-\x{9fa5}]+$/u£¬
²Î¿¼ÒÔÉÏÎÄÕÂдÁËÈçÏÂÒ»¶Î²âÊÔ´úÂë(¸´ÖÆÒÔÏ´úÂë±£´æ³É.phpÎļþ) <?php
$action = trim($_GET['action']);
if($action == "sub")
{
$str = $_POST['dir'];
//if(!preg_match("/^[".chr(0xa1)."-".chr(0xff)."A-Za-z0-9_]+$/",$str)) //GB2312ºº×Ö×ÖĸÊý×ÖÏ»®ÏßÕýÔò±í´ïʽ
if(!preg_match("/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u",$str)) //UTF-8ºº×Ö×ÖĸÊý×ÖÏ»®ÏßÕýÔò±í´ïʽ
{
echo "<font color=red>ÄúÊäÈëµÄ[".$str."]º¬ÓÐÎ¥·¨×Ö·û</font>";
}
&
Ïà¹ØÎĵµ£º
½üÀ´¶Ôphp±È½Ï¸ÐÐËȤ£¬¾Í¶Ï¶ÏÐøÐøµÄ»¨ÁËÁ½¸öÐÇÆÚµÄʱ¼ä°ÑÕû¸öphp¿ª·¢ÐèÒªÓõ½µÄ¶«Î÷¶¼×°ºÃÁË£¬´ó¸ÅµÄ°²×°¹ý³ÌÈçÏ¡£
Ò»¡¢°²×°µÄÈí¼þ:
Apache: 2.2.14
PHP:5.2.12
MySQL:5.1.42¡£
SVN:1.5.6
PHPMyAdmin:3.2.5
Zend Studio: 7.1
Zend Debugger: 5.1.14
¶þ¡¢°²×°¹ý³Ì£º
1. °²×°ºÍÅäÖÃapache
°²×°£ºÊ×ÏÈ´Óhttp://apa ......
ÔÚPHPÖÐÓÐurlencode()¡¢urldecode()¡¢rawurlencode()¡¢rawurldecode()ÕâЩº¯ÊýÀ´½â¾öÍøÒ³
URL±àÂë½âÂëÎÊÌâ¡£
ÔÚASPµÄʱºòURL±àÂë½âÂëºÜÊÇÄÕ»ð£¬Server.urlencode²»Ì«ºÃÓã¬Óöµ½utf-8±àÂëµÄµØÖ·¸üÊÇÂé
·³¡£ÄãÒª»ñÈ¡°Ù¶È¡¢Googleµã»÷µ½ÍøÕ¾µÄÍøÖ·Á´½ÓÖеĹؼü×Ö£¬ÒªÐ´ÉÏÒ»¶Ñ×Ô¶¨Ò庯ÊýÀ´µÃµ½urldecodeµÄЧ¹û¡£
ժ¼һƪ¹Ø ......
×°ÁËPHP-5.3.0, Æô¶¯µÄʱºò×ÜÊÇ»áÓÐ
"[06-Aug-2009 13:27:31] PHP Warning: PHP Startup: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are stil ......
µÚÒ»Õ PHP¸ÅÊö
1¡¢ »ù±¾Óï·¨
a) Òª°ÑphpǶÈëÒ³Ãæ£¬¿ÉÒÔ°ÑËü·ÅÔÚPHP±êÇ©ÄÚ
<?php ?>
b) ÔÚbody±êÇ©½áÊøÖ®Ç°£¬²åÈëphp´úÂë
c)   ......
±¾ÎÄÖ»ÊÇÔÚ³¢ÊÔPHPµ÷ÊÔºó»ñµÃµÄÈô¸É¾ÑéµÄ¼Ç¼¡£
PHPµÄIDEµ÷ÊÔ¶¼±È½ÏÍ´¿à£¬Ò»°ãºÜÄÑÓм¯³ÉµÄIDE¡£ÔÚϰ¹ßÓÃMyEclipseµ÷ÊÔJSPÓ¦Óúó£¬ÔÙÈ¥¿ª·¢PHP³ÌÐò×ܾõµÃÌØ±ðÂé·³£¬Æä×î´óÔÒò¿ÉÄܾÍÊǵ÷ÊÔ»·¾³µÄ°²×°ºÍÅäÖᣱÊÕß³¢ÊÔ¹ýN´Î£¬Ê²Ã´xDebug£¬DBG Script£¬Zend Debugger£¬Í³Í³ÕûÁËÒ»±é£ ......