php小总结

1.当你的MySQL回来的字符串的编码格局(字符集)与你的客户东西程序(mysql, php, query browser, .sanqingcha.faxingge.com..)当时使

用的字符集不一起,就会形成乱码。 比方一个英国兄弟通知你Long, 当一位中国小学生看到后就会通知你“龙”而不是“长

”.

2. MySQL中默许字符集的设置有四级:服务器级,数据库级,表级 。结尾是字段级 的字符集设置。注意前三种均为默

认设置,并不代码你的字段结尾会运用这个字符集设置。所以咱们主张要用show create table table ; 或show full fields

from tableName; 来检查当时表中字段的字符集设置。

MySQL中关于衔接环境的字符集设置有 Client端,connection, results 经过这些参数,MySQL就晓得你的客户端工

具用的是什么字符集,成果集大概是什么字符集。这样MySQL就会做必要的翻译,一旦这些参数有误,自然会致使字符

串在转输过程中的变换过错。基本上99%的乱码由些形成。

也即是说你能够用show create table tablename;/show full fields from tablename; ;来检查你的当时表中字段的字符

集。能够用show variables like "char%";来检查你的服务器级,数据库级,表级的默许字符集(能够用set names “[utf

-8/gbk/...]”;);然后你有必要将两种字符集设置成共同的字符集。破例,你的客户端东西的字符集也有必要与前面的字符

集设置成共同,这样就不会呈现中文输出乱码的疑问了。

浅显的讲:也即是你有必要设置共同的字符集。mysql(服务器级,数据库级,表级,字段级)和客户端东西(client,php

,results,...)的字符集有必要设置成共同共同的字符集(通常是"utf-8")。字符集描叙了共同的言语,只要言语共同了,才

不会呈现乱码。

我运用的是mysql+php+apache渠道。php代码从数据库中读取中文数据的时分呈现了乱码的疑问。如下操作能够处理

疑问:

(1).断定共同的字符集:show variables like "char%";看看mysql(服务器级,数据库级,表级)中默许的字符集,

能够用set names "[utf8/gbk/....]";来修正默许字符集,(通常改为utf-8)。

(2).检查所树立的表中字段的字符集,有必要在树立表之前先设置字符集是坚持共同性。树立后能够用show create

table tablename;/show full fields from tablename;来检查所树立的表中字段的字符集。

(3).客户端东西字符集的设置,有必要设置于前面字符集共同,

有两个当地需求设置

1. 数据库衔接:

$con=mysql_connect('localhost','root','1233333') die(mysql_error());

mysql_query('set names utf8',$con);

2./'>

or

紧记有必要设置MYSQL和客户端东西的字符集的共同性就OK了。

 

第二篇:php总结

? 在 echo 函数中,可以同时输出多个字符串,而在 print 函数中则只可以同

时输出一个字符串。同时,echo函数并不需要圆括号,所以echo函数更像是语句而不像是函数。

? 字符串可以由单引号或双引号引出的字段定义。注意不同的是被单引号引出

的字符串是以字面定义的,而双引号引出的字符串可以被扩展。而且,在双引号字符串中可以使用反斜杠()在字符串中加入转义序列和转换字符。

? 有效的变量名由字母或者下划线开头,后面跟上任意数量的字母,数字,或

者下划线。$a 是一个变量,$A 是不同于$a 的另一个变量。$a、$_a、$_a123_123_a 是合法变量,$123a 不合法。

? PHP 在变量定义中不需要明示的类型定义;变量类型是根据使用该变量的

上下文所决定的。也就是说,如果你把一个字符串值赋给变量 var,var 就成了一个字符串。如果你又把一个整型值赋给 var,那它就成了一个整数。 ? 同C 语言,PHP 是函数化语言,echo 关键字就是echo()函数的函数名,

echo $a 也可写为echo($a)或print($a)。

? print_r() 显示关于一个变量的易于理解的信息。如果给出的是 string、

integer 或 float,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素。object 与数组类似。记住,print_r() 将把数组的指针移到最后边。使用 reset() 可让指针回到开始处。

? 要表示一个单引号,需要用反斜线(\)转义;要表示一个反斜线,需要用两

个反斜线表示。

? 当用双引号指定字符串时,其中的变量会被解析。

如果遇到$,PHP 会尽可能多地取得后面的字符以组成一个合法的变量名。若要显示地指明变量名,用花括号把变量名括起来。 应明确双引号中变量名,以免发生变量解析错误。

$beer = 'TsingTao';

echo " $beer:中国啤酒名牌"; //出错,这里用的是中文冒号

echo " $beer : 中国啤酒名牌"; //正常工作,这里用的是中文冒号,但在冒号前加了个空格

echo " $beer: 中国啤酒名牌"; //正常工作,英文冒号: 是无效变量标识符 echo "$beer's taste is great"; //正常工作, 单引号’是无效变量标识符

echo "He drank some $beers"; //出错, 's' 是有效的变量标识符

echo "He drank some ${beer}s"; //正常工作,使用花括号强制指明变量名 echo "He drank some {$beer}s"; //正常工作,使用花括号强制指明变量名 ?>

? 如果方括号内没指定键名,则取当前最大整数索引值,新的键名将是该值 +

1。如果当前还没有整数索引,则键名将为 0。如果制定的键名已经有值了,该值将被覆盖。如:

// 有些键没有指定健名的数组

array(5 => 43, 32, 56, "b" => 12);

// 上数组等同于这个数组

array(5 => 43, 6 => 32, 7 => 56, "b" => 12);

?>

? list() 用一步操作给一组变量进行赋值。 list() 仅能用于数字索引的数组并假

定数字索引从 0 开始。

例: list() 例子

$info = array('张三', '男', '25 岁');

// 取出数组$info 中所有元素值,分别赋值到三个变量中

list($name, $sex, $age) = $info;

print "$name 是$sex 性,今年$age 岁\n";

//取出数组$info 中部分元素值,分别赋值到相应变量中

list( , , $age) = $info;

print "张三今年$age 岁\n";

?>

? 比较运算符 不等(!=或<>)

逻辑运算符 异或(xor)

连接赋值运算符 (“.=”)

? 字符串处理函数库

①int strlen (字符串名) – 得到字符串的长度

②substr()——截取子串

string substr (string string, int start [, int length] )

? explode()——将字符串拆分成数组

array explode ( string separator, string string)

此函数返回由字符串组成的数组,每个元素都是 string 的一个子串,它们被字符串 separator 作为边界点分割出来。如果 separator 为空字符串(""),explode() 将返回 FALSE。如果 separator 所包含的值在 string 中找不到,那么 explode() 将返回包含 string 单个元素的数组。

explode() 示例

// 示例 1

$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";

$pieces = explode(" ", $pizza);//注意这里用空格作为分隔符,而不是空字符串 echo $pieces[0]; // piece1

echo $pieces[1]; // piece2

?>

implode()——将数组元素联成字符串

string implode ( string glue, array pieces )

$array = array('lastname', 'email', 'phone');

$comma_separated = implode(",", $array);

echo $comma_separated; // lastname,email,phone

?>

? floor -- 向下取整

语法格式:float floor ( float value )

返回不大于 value 的下一个整数,将 value 的小数部分舍去取整。floor() 返回的类型仍然是 float,因为 float值的范围通常比 integer 要大。 例 floor() 例子

echo floor(4.3); // 4

echo floor(9.999); // 9

?>

ceil -- 向上取整

语法格式:float ceil ( float value )

返回不小于 value 的下一个整数,value 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float值的范围通常比 integer 要大。

例 ceil() 例子

echo ceil(4.3); // 5

echo ceil(9.999); // 10

?>

? session 变量存储的是个别浏览器端专用的数据。当用户浏览Web 站点时,

使用session 变量可以为每一个用户保存指定的数据。任何存储在用户session 变量中的数据可以在用户调用下一个页面时取得。实际应用中,在身份认证、操作监控、客户消费偏好跟踪等许多需要持续会话的场合,应用广泛。

相关推荐