PHP----个别函数用法记录

explode(separator,string , limit):

把字符串分割为数组。其中separator为分割符、string为被分割字符串、limit(可选)规定所返回的数组元素的最大数目

<?php $str = "Hello world. It's a beautiful day."; print_r (explode(" ",$str)); ?> //输出 Array ( [0] => Hello [1] => world. [2] => It's [3] => a [4] => beautiful [5] => day. )


isset(mixed var):

用来测试变量是否已经设定。若已经设定则返回true,否则返回false

<?php $a = "test"; echo isset($a); // true unset($a); echo isset($a); // false ?>

serialize(mixed value):产生一个可存储的值的表示
unserialize(String str):从以存储的序列化对象中恢复

<?php //声明一个类 class dog { var $name; var $age; var $owner; function dog($in_name="unnamed",$in_age="0",$in_owner="unknown") { $this->name = $in_name; $this->age = $in_age; $this->owner = $in_owner; } function getage() { return ($this->age * 365); } function getowner() { return ($this->owner); } function getname() { return ($this->name); } } //实例化这个类 $ourfirstdog = new dog("Rover",12,"Lisa and Graham"); //用serialize函数将这个实例转化为一个序列化的字符串 $dogdisc = serialize($ourfirstdog); print $dogdisc; //$ourfirstdog 已经序列化为字符串 O:3:"dog":3:{s:4:"name";s:5:"Rover";s:3:"age";i:12;s:5:"owner";s:15:"Lisa and Graham";} print '<BR>'; /* ----------------------------------------------------------------------------------------- 在这里你可以将字符串 $dogdisc 存储到任何地方如 session,cookie,数据库,php文件 ----------------------------------------------------------------------------------------- */ //我们在此注销这个类 unset($ourfirstdog); /* 还原操作 */ /* ----------------------------------------------------------------------------------------- 在这里将字符串 $dogdisc 从你存储的地方读出来如 session,cookie,数据库,php文件 ----------------------------------------------------------------------------------------- */ //我们在这里用 unserialize() 还原已经序列化的对象 $pet = unserialize($dogdisc); //此时的 $pet 已经是前面的 $ourfirstdog 对象了 //获得年龄和名字属性 $old = $pet->getage(); $name = $pet->getname(); //这个类此时无需实例化可以继续使用,而且属性和值都是保持在序列化之前的状态 print "Our first dog is called $name and is $old days old<br>"; print '<BR>'; ?>

int is_object(mixed var):

判断变量类型是否是类类型

若为类类型则返回true,否则返回false

constant(constant):

返回常量的值

<?php //定义一个常量 define("GREETING","Hello world!"); echo constant("GREETING"); ?>
//输出:
Hello world!
 

 

debug_zval_dump($var):

用于输出变量的引用次数--会导致比实际数+1

<?php $var = 1; debug_zval_dump($var); $var_dup = $var; debug_zval_dump($var); ?> // 输出: long(1) refcount(2) long(1) refcount(3)

defind(name,value,case_insensitive):定义一个常量

name表示常量名称,value规定常量的值,case_insentive规定是否对常量名称带小写铭感,如果true则为不敏感

<?php define("GREETING","Hello world!"); echo constant("GREETING"); ?> //输出: Hello world!
<?php
define("GREETING","Hello world!",TRUE);
echo constant("greeting");
?>
//输出:
Hello world!
 

 

double doubleval(mixed var):

将变量转成倍浮点数类型。转换的变量var可以是数组或则类之外的任何类型,如果是String类型则返回0

float floatval(mixed var)

将变量转成浮点数类型。转换的变量var可以是数组或则类之外的任何类型,如果是String类型则返回0

array get_defined_vars(void)

此函数返回一个包含所有已定义变量列表的多维数组,这些变量包括环境变量、服务器变量和用户定义的变量。

<?php $b = array(1,1,2,3,5,8); $arr = get_defined_vars(); // 打印 $b print_r($arr["b"]); // 打印 PHP 解释程序的路径(如果 PHP 作为 CGI 使用的话) // 例如:/usr/local/bin/php echo $arr["_"]; // 打印命令行参数(如果有的话) print_r($arr["argv"]); // 打印所有服务器变量 print_r($arr["_SERVER"]); // 打印变量数组的所有可用键值 print_r(array_keys(get_defined_vars())); ?>

string gettype(mixed var)

本函数用来取得变量的类型。返回的类型字符串可能为下列字符串其中之一:integer、double、string、array、object、unknown type。

stringget_resource_type( resource handle)

此函数返回一个字符串,用于表示传递给它的resource的类型。如果参数不是合法的resource,将产生错误。

<?php $c = mysql_connect(); echo get_resource_type($c)."/n"; // 打印:mysql link $fp = fopen("foo","w"); echo get_resource_type($fp)."/n"; // 打印:file $doc = new_xmldoc("1.0"); echo get_resource_type($doc->doc)."/n"; // 打印:domxml document ?>

boolimport_request_variables( string types [, string prefix] )

将 GET/POST/Cookie 变量导入到全局作用域中。如果你禁止了register_globals,但又想用到一些全局变量,那么此函数就很有用。

你可以使用types参数指定需要导入的变量。可以用字母‘G’、‘P’和‘C’分别表示 GET、POST 和 Cookie。这些字母不区分大小写,所以你可以使用‘g’、‘p’和‘c’的任何组合。POST 包含了通过 POST 方法上传的文件信息。注意这些字母的顺序,当使用“gp”时,POST 变量将使用相同的名字覆盖 GET 变量。任何 GPC 以外的字母都将被忽略。

prefix参数作为变量名的前缀,置于所有被导入到全局作用域的变量之前。所以如果你有个名为“userid”的 GET 变量,同时提供了“pref_”作为前缀,那么你将获得一个名为 $pref_userid 的全局变量。

如果你对导入其它全局变量(例如 SERVER 变量)感兴趣,请考虑使用extract()

注:虽然prefix参数是可选的,但如果不指定前缀,或者指定一个空字符串作为前缀,你将获得一个E_NOTICE级别的错误。使用默认错误报告级别是不显示注意(Notice)级别的错误的。

// 此处将导入 GET 和 POST 变量 // 使用“rvar_”作为前缀 import_request_variables("gP", "rvar_"); echo $rvar_foo; ?>

int intval(mixed var,int[base]);

本函数可将 变量转换成整数类型。可省略的参数base是转换的基底,默认值为10.转换的变量var可以围数组或则类之外的任何类型变量

is_array
is_bool
is_callable:检测参数是否为合法的可调用结构bool is_callable(mixed var [,bool syntax[,string callable_name]])
is_double
is_int
is_integer
is_long
is_null
is_numeric
is_real
is_resource
is_scalar:如果给出的变量参数var是一个标量,is_scalar()返回TRUE,否则返回FALSE

 
 

标量变量是指那些包含了integerfloatstringboolean的变量,

 
   
 
   
 
  

arrayobjectresource则不是标量。

 
   
 
   
 
  

is_string

 

print_r()函数,只用于输出数组

php 中 print_r 函数输出的数组内容不排列。为了让它输出的好看些。如,数组有多层。分段列出,我们可以这样写:
echo "<pre>";
print_r xxxxx;
echo "<pre>";

bool settype(mixed var ,string type):将变量var的类型设置为type

string strval(mixed var);

本函数可将数组及类之外的变量类型转换成字符串类型。

voidvar_dump( mixed expression [, mixed expression [, ...]])

此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

提示:为了防止程序直接将结果输出到浏览器,您可以使用输出控制函数(output-controlfunctions)来捕获函数的输出,并把它们保存到一个string型的变量中。

mixedvar_export( mixed expression [, bool return])

此函数返回关于传递给该函数的变量的结构信息,它和var_dump()类似,不同的是其返回的表示是合法的 PHP 代码。

您可以通过将函数的第二个参数设置为TRUE,从而返回变量的表示。

<pre> <?php $a = array (1, 2, array ("a", "b", "c")); var_export ($a); /* 输出: array ( 0 => 1, 1 => 2, 2 => array ( 0 => 'a', 1 => 'b', 2 => 'c', ), ) */ $b = 3.1; $v = var_export($b, TRUE); echo $v; /* 输出: 3.1 */ ?> </pre>

boolempty( mixed var)

如果var是非空或非零的值,则empty()返回FALSE。换句话说,""0"0"NULLFALSEarray()var $var;以及没有任何属性的对象都将被认为是空的,如果var为空,则返回TRUE

除了当变量没有置值时不产生警告之外,empty()(boolean)var的反义词。参见转换为布尔值获取更多信息。

<?php $var = 0; // 结果为 true,因为 $var 为空 if (empty($var)) { echo '$var is either 0 or not set at all'; } // 结果为 false,因为 $var 已设置 if (!isset($var)) { echo '$var is not set at all'; } ?>

defined(name)函数的作用是:检查一个常量是否存在。

addslashes(String)在制定的预定义字符前面添加反斜杠

预定义符包括:单引号、双引号、反斜杠、null
<?php $str = "Who's John Adams?"; echo $str . " This is not safe in a database query.<br />"; echo addslashes($str) . " This is safe in a database query."; ?> 输出: Who's John Adams? This is not safe in a database query. Who\'s John Adams? This is safe in a database query.

strlen(String):返回字符串长度

<?phpecho strlen("Hello world!");?>

addcslashes(string,characters)

在指定的字符前面加上反斜杠。在对o、r、n、t使用时要注意php中\o,\r,\n,\t是预定义的转义序列
<?php $str = "Hello, my name is John Adams."; echo $str; echo addcslashes($str,'m'); echo addcslashes($str,'J'); ?> 输出: Hello, my name is John Adams. Hello, \my na\me is John Ada\ms. Hello, my name is \John Adams. 在本例中,我们要向字符串中的一个范围内的字符添加反斜杠: <?php $str = "Hello, my name is John Adams."; echo $str; echo addcslashes($str,'A..Z'); echo addcslashes($str,'a..z'); echo addcslashes($str,'a..h'); ?> 输出: Hello, my name is John Adams. \Hello, my name is \John \Adams. H\e\l\l\o, \m\y \n\a\m\e \i\s J\o\h\n A\d\a\m\s. H\ello, my n\am\e is Jo\hn A\d\ams.

bin2hex(string)把ASCII字符串的字符串转换成十六进制的值

<?php $str = "Hello world!"; echo bin2hex($str); echo pack("H*",bin2hex($str)); ?> 输出: 48656c6c6f20776f726c6421 Hello world!

chop(string,charlist): 从一个字符串的右边结尾处,删除一个字符中包含的预定义字符

允许使用下面的字符串。如果charlist参数为空,那么它将被设置成删除:
  • "/0" - ASCII 0, NULL
    "/0" - ASCII 0,空值
  • "/t" - ASCII 9, a tab
    "/t" - ASCII 9,制表符[tab]
  • "/n" - ASCII 10, a new line
    "/n" - ASCII 10,新的一行
  • "/x0B" - ASCII 11, a vertical tab.
    "/x0B" - ASCII 11,垂直制表符[vertical tab]
  • "/r" - ASCII 13, a carriage return
    "/r" - ASCII 13,回车
  • " " - ASCII 32, an ordinary white space
    " " - ASCII 32,空格

rtrim(string,charlist):从字符串末端开始删除空白字符或则预定义字符

charlist同chop函数

chr(ascii):从制定ASCII返回字符

<?php echo chr(52); echo chr(052); echo chr(0x52); ?> 输出: 4 * R

chunk_split(string,length,end):把字符串分割为一连串更小的部分

<?php
$str = "Hello world!";
echo chunk_split($str,1,".");
?>
输出:
H.e.l.l.o. .w.o.r.l.d.!.
例子 2
本例将在六个字符之后分割一次字符串,并添加 "...":
<?php
$str = "Hello world!";
echo chunk_split($str,6,"...");
?>
输出:
Hello ...world!...

conver_cyr_string(string,from,to):把一宗Cyrilic字符串转换成另一种

 被支持的cyrilllic字符集有:k-koi8-rw-windows-1251i-iso8859-5a-x-cp866d-x-cp866m-x-mac-cyrillicconvert_uudecode(string):对uuencode编码的字符串进行解码 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
上一篇: Android源码学习系列--Parcelable 下一篇: 修改ExpandableListView前面展开小图标
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值