设为首页 收藏本站
查看: 1337|回复: 0

[经验分享] PHP----个别函数用法记录

[复制链接]

尚未签到

发表于 2017-3-25 11:20:29 | 显示全部楼层 |阅读模式
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):从以存储的序列化对象中恢复


http://www.cnblogs.com/yeer/archive/2009/03/25/1421161.html



<?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):

http://home.phpchina.com/space.php?uid=100535&do=blog&id=144831
  用于输出变量的引用次数--会导致比实际数+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。






标量变量是指那些包含了integer、float、string或boolean的变量,









而array、object和resource则不是标量。






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"、NULLFALSE、array()、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
*
Rchunk_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前面展开小图标

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-355172-1-1.html 上篇帖子: ASP JSP PHP比较 下篇帖子: PHP-SOCKETS编程问题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表