41.页面字符出现乱码,怎么解决?
1.首先考虑当前文件是不是设置了字符集。
查看是不是meta标签中写了charset,如果是php页面还可以看看是不是在header()函数中指定了charset;
例如:<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
header(“content-type:text/html;charset=utf-8”);
2.如果设置了字符集(也就是charset),那么判断当前文件保存的编码格式是否跟页面设置的字符集保持一致,两者必须保持统一;
3.如果涉及到从数据库提取数据,那么判断数据库查询时的字符集是否跟当前页面设置的字符集一致,两者必须统一,例如:mysql_query(“set names utf8”)。
- 正则表达式是什么?php中有哪些常用的跟正则相关的函数?请写出一个email的正则,中国手机号码和座机号码的正则表达式?
正则表达式是用于描述字符排列模式的一种语法规则。正则表达式也叫做模式表达式。
网站开发中正则表达式最常用于表单提交信息前的客户端验证。
比如验证用户名是否输入正确,密码输入是否符合要求,email、手机号码等信息的输入是否合法
在php中正则表达式主要用于字符串的分割、匹配、查找和替换操作。 preg系列函数可以处理。具体有以下几个:string preg_quote ( string str [, string delimiter] )
转义正则表达式字符 正则表达式的特殊字符包括:. \\ + * ? [ ^ ] $ ( ) { } = ! < > | :。
preg_replace -- 执行正则表达式的搜索和替换
mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit]
preg_replace_callback -- 用回调函数执行正则表达式的搜索和替换
mixed preg_replace_callback ( mixed pattern, callback callback, mixed subject [, int limit] )
preg_split -- 用正则表达式分割字符串
array preg_split ( string pattern, string subject [, int limit [, int flags]] )
常用的正则表达式写法:
中文:/^[\u4E00-\u9FA5]+$/
手机号码:/^(86)?0?1\d{10}$/
EMAIL: /^[\w-]+[\w-.]?@[\w-]+\.{1}[A-Za-z]{2,5}$/
密码(安全级别中): /^(\d+[A-Za-z]\w*|[A-Za-z]+\d\w*)$/
密码(安全级别高): /^(\d+[a-zA-Z~!@#$%^&(){}][\w~!@#$%^&(){}]*|[a-zA-Z~!@#$%^&(){}]+\d[\w~!@#$%^&(){}]*)$/
- 请说出目前学过的返回是资源的函数?
答: fopen(打开文件)
imagecreatefromjpeg(png gif) — 从 JPEG 文件新建一图像 imagecreatetruecolor — 新建一个真彩色图像
imagecopymerge — 拷贝并合并图像的一部分 imagecopyresized — 拷贝部分图像并调整大小 mysql_connect — 打开一个到 MySQL 服务器的连接 mysql_query();只有这执行select的时候成功,才返回资源,失败返回FALSE
- preg_replace()和 str_ireplace()两个函数在使用上有什么不同?preg_split()和split()函数如何使用?
preg_replace — 执行正则表达式的搜索和替换
str_ireplace — str_replace() 的忽略大小写版本
str_replace — 子字符串替换
preg_split — 用正则表达式分割字符串
split — 用正则表达式将字符串分割到数组中
- 获取当前时间戳的函数主要有哪些?用PHP打印出今天的时间,格式是2010-12-10 22:21:21?
用PHP打印出前一天的时间格式是2010-12-10 22:21:21?如何把2010-12-25 10:30:25变成unix时间戳?
echo date ("Y-m-d H:i:s" ,strtotime(‘-1,days’));
date('Y-m-d H:i:s',time());
$unix_time = strtotime("2009-9-2 10:30:25");//变成unix时间戳
echo date("Y-m-d H:i:s",$unix_time);//格式化为正常时间格式
- 在url中用get传值的时候,若中文出现乱码,应该用哪个函数对中文进行编码?
用户在网站表单提交数据的时候,为了防止脚本攻击(比如用户输入<script>alert(111);</script>),php端接收数据的时候,应该如何处理?
使用urlencode()对中文进行编码,使用urldecode()来解码。
使用htmlspecialchars($_POST[‘title’])来过滤表单传参就可以避免脚本攻击。
- 说说mysql_fetch_row() 和mysql_fetch_assoc()和mysql_fetch_array之间有什么区别?
第一个是返回结果集中的一行作为索引数组,
第二个是返回关联数组,
而第三个既可以返回索引数组也可以返回关联数组,取决于它的第二个参数 MYSQL_BOTH MYSQL_NUM MYSQL_ASSOC 默认为MYSQL_BOTH $sql =”select * from table1”; $result = mysql_query($sql); mysql_fetch_array($result, MYSQL_NUM);
转自:http://bbs.itheima.com/forum.php?mod=viewthread&tid=301782&extra=page%3D1