• PHP页面编码问题


    页面编码统一

    MySQL数据库编码、html页面编码、PHP或html文件本身编码要全部一致。

    1、MySQL数据库编码:
    建立数据库时指定编码(如gbk_chinese_ci),建立数据表、建立字段、插入数据时不要指定编码,会自动继承数据库的编码。
    数据库连接时,也有编码,可以在连接完数据库后,执行mysql_query(‘SET NAMES gbk’);//将gbk换成你的编码,如utf8。

    2、html页面的编码,指的是这一行的设置:

    <meta http-equiv="Content-Type" content="text/html; charset=gbk" />
    

    3、PHP或html文件本身的编码:
    用editplus打开php文件或html文件,另存时,选择的编码,如果数据库和页面编码是gbk,则这儿的编码选择ansi;如果数据库和页面编码是utf-8,则这儿也选择utf-8。

    4、Javascript或Flash中传递的数据是utf-8编码:
    另外要注意的是,Javascript或Flash中传递的数据是utf-8编码,如果数据库和页面编码是gbk,要进行转码,然后写入数据库。

    iconv('utf-8', 'gbk', $content);
    

    5、在PHP程序中,可以加上一行,来指定PHP源程序的编码:

    header('Content-type: text/html; charset=gbk');
    

    php页面编码

    1.在文件头中设置编码

    <?php
    @header('Content-type: text/html;charset=UTF-8');
    ?>
    

    2.header与meta的区别
    用@header('Content-type: text/html; charset=gbk');与<meta http-equiv="Content-Type" content="text/html; charset=gbk" />的区别
    他们都是告诉浏览器用什么编码显示网页,要说有什么不同,header是发送原始 HTTP 标头,不在网页中留下什么,而meta是写在网页中。
    其一,如果网页中没有meta,那么发送 HTTP 标头就起作用了。
    其二,用header()函数发送原始 HTTP 标头,可以包含更多内容,设置编码只是其中之一。
    其三,有些时候不要网页显示什么内容,但要通知浏览器用什么编码来进行后续动作。


  • 相关阅读:
    [ SHOI 2012 ] 随机树
    [ BZOJ 4318 & 3450 / CodeForces 235 B ] OSU!
    [ HNOI 2015 ] 亚瑟王
    [ JSOI 2015 ] Salesman
    [ ZJOI 2007 ] 时态同步
    [ Luogu Contest 10364 ] TG
    [ CodeForces 17 E ] Palisection
    [ BZOJ 2160 ] 拉拉队排练
    Manacher 学习笔记
    [ CodeForces 865 D ] Buy Low Sell High
  • 原文地址:https://www.cnblogs.com/xcxc/p/2567350.html
Copyright © 2020-2023  润新知