[PHP中文社区教程] 第十八课:函数

林继 PHP 技术 5,687 共写了1846个字 (2006-12-21 16:45:13) 没有评论 打印 扫描二维码 百度未收录

From:http://www.phpnet.cn/bbs/viewthread.php?tid=530&extra=page%3D1

  函数是一个功能单元,一个函数就能实现一个特定的功能。我们使用函数时,无需知道内部细节,只需根据函数外部说明,了解函数的数据要求,明确函数能够实现的功能,清楚函数返回的结果,然后根据函数说明调用函数来实现相应的功能。PHP 提供了大量实现各种操作的函数,下面先通过一个有趣的例子调起你的兴趣,一定要先跟着做哦18-1:


<?php

 

echo file_get_contents('http://www.163.com');

 

?>

  上面这个例子你运行了吗?呵呵,有趣吧,我们只用一个函数就把网易的首页搬到自己的网站上了(嘘,千万不要联想到网上流传的“小偷程序”)。

  函数的形式: 函数名  (  参数名 )

  PHP把一个函数名(区分大小写)后跟一对括号的部分识别为函数。如:PHP会把file_get_contents($url)作为函数处理。

  如何阅读函数的定义(函数原型)

  PHP中有大量的函数,要正确使用函数就要会阅读函数的定义,PHP手册中对函数的介绍是按以下语法格式进行的:

  返回类型    函数名    ( 参数类型   参数名 )

  例如: in_array() 其函数原型如下:

  bool  in_array ( mixed needle, array haystack [, bool strict])

  这是什么意思?in_array() 返回一个“布尔 (bool)”值,第一个参数被命名为 needle 且其类型不定,因此我们将其称为“混和(mixed)”类型。该混和类型可以是一个标量的值(字符串、整数、或者浮点数),或者一个数组。第二个参数被命名为haystack,类型要是“数组(array)”。第三个可选参数被命名为 strict。所有的可选参数都用 [ 方括号 ] 括起来。手册表明 strict 参数默认值为布尔值 FALSE

  函数 in_array() 功能是检查数组中是否存在某个值。如果在参数 haystack 中能找到参数 needle 则返回 TRUE ,否则返回 FALSE。用法如18-2:


<?php

$a = array('北京','上海','天津','成都','西安','武汉');

$city '拉萨';

 

if( in_array$city$a ) == TRUE ) echo "{$city}可送货上门,货到付款。";

else echo "非常抱歉,{$city}只能款到发货。";

 

?>

  函数 in_array( $city, $a ) 检查 $city是否存在于$a数组之中,如果是,函数返回TRUE,否则返回 FALSE。

  你会阅读函数了吗?下面我给出一个函数原型,你阅读后能回答我的问题吗?

  string strtoupper ( string string )

  1. 这个函数要求输入什么类型的参数?2。这个函数会返回一个什么类型的值?

  这是一个把字串转换为大写的函数,要求输入字符串,结果返回字符串。用法如18-3:


<?php

$word 'abcdefGhijklMNop';

$word strtoupper$word );

echo $word;  //结果输出“ABCDEFGHIJKLMNOP”

?>

  这一节课主要让大家认识了什么是函数,怎样阅读函数,怎样正确使用函数。掌握了这些,我们就能使用PHP中大量的函数了。所有的函数及使用实例都包含在PHP手册中,这些函数按一定的功能分成字符串处理函数,数学函数,数组函数,邮件函数,文件操作函数,时间函数,图像函数,正则表达式函数,数据库操作函数。。。等等很多类别。

  下面我要你在PHP手册中找出实现这样功能的函数,并能正确使用它,你能做到吗?

  1. $title = '尚雯婕亮相北京车展引芝麻团追捧豪车最抢手',这个新闻标题太长了,由于网页版面限制,我想截取前15个汉字,后面的用省略号“…”表示,有什么函数能做呢?

  2. $news = '  11月21日   是北京国际车展对公众开放的第一天,         一大早国际展览中心门口就被挤得水泄不通。     ',这是一段从网上抓取的新闻,但中间出现了令人讨厌的空白,有什么函数能去掉这些空白呢?

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

< >