ps:俺的文章俺懂就行。大家不要拿来学习不然每个人的学习思路不一样。看视屏文章的老师不同笔记不同加上我也是新手上路,还怕误导!请大家看行且思考,帮忙挖Bug也可以。

案例要求:你可以写一个两行三列的表格吗?N行N列呢?


我们先来使用php写一个简单的两行三列的表格。(PS:由此引出函数参数的作用)

<?php
/*
*在写的时候建议是成对的写。
*比如:
for ($i=1; $i <=2; $i++)
{
$table.="<tr>"; //写完立马写另外一个。以免漏泄或者其他未知的意外。
$table.="</tr>"; //点代表承接。
}
*
*
*/
$table = "<table border='1' cellpading='2'>";
for ($i=1; $i <=2 ; $i++) {
$table .= "<tr>";
for ($j=1; $j <=3 ; $j++) {
$table .= "<td>test</td>";
}
$table .= "</tr>";
}
$table .="</table>";
echo $table;
?>
输出效果如下所示:
test test test
test test test

然后我们自定义一个函数,然后将$table放到里面去。

<?php
function createtable(){
$table = "<table border='1' cellpading='2'>";
for ($i=1; $i <=2 ; $i++) {
$table .= "<tr>";
for ($j=1; $j <=3 ; $j++) {
$table .= "<td>test</td>";
}
$table .= "</tr>";
}
$table .="</table>";
echo $table;
}
?>

这样肯定是不行的。那么我们来研究一下如何将这个表格设置成函数。这时候就是参数出场的时候了。

方法:function test($x,$y);

$x和$y就是参数,可有可无,可无限制。

<?php
function createtable($x,$y){
$table = "<table border='1' cellpading='2'>";
for ($i=1; $i <=$x ; $i++) { #将此处本来的2改为了$x,就会自动调用函数里的。
$table .= "<tr>";
for ($j=1; $j <=$y ; $j++) { #将此处本来的3改为了$y
$table .= "<td>test</td>";
}
$table .= "</tr>";
}
$table .="</table>";
echo $table;
}
createtable(2,3); #调用函数,记住哦,两个参数就要有两个值。否则会出错呢!
?>

可选参数


前面我们说到的是参数是必须要选择的。那么有没有不必麻烦去选择的自动默认的就有的呢?

<?php
function createtable($x,$y,$color='red'){
$table = "<table bgcolor=$color border='1'>";
for ($i=; $i <=$x ; $i++) {
$table .= "<tr>";
for ($j=; $j <= $y ; $j++) {
$table .="<td>Hello World</td>";
}
$table .= "</tr>";
}
$table .="</table>";
echo $table;
}
createtable(,);
?>

跟着百度学PHP[5]函数篇1-参数的更多相关文章

  1. 跟着百度学PHP[5]函数篇2-PHP中的特殊形式的函数

    目录...................................................... .00x1 可变函数 在PHP里面如果说将“函数名称”赋予字符串类型的变量.在调用这个 ...

  2. 跟着百度学PHP[8]-setcookie的其他参数学习

    setcookie(name,value,time,path,domain,secure) 第四个参数是cookie的有效路径.顾名思义就是在那个路径下是有效的.当然了其子目录下也是有效的.比如 /h ...

  3. 跟着百度学PHP[14]-PDO之Mysql的事务处理2

    前面所将仅仅是在纯mysql下的讲解,这节就是要将其搬到PDO台面上来了. 将自动提交关闭. SetAttribute下有一个PDO::ATTR_AUTOCOMMIT 将其设置为0即可关闭,如:$pd ...

  4. 跟着百度学PHP[4]OOP面对对象编程-13-魔术方法__set(),__get(),__isset(),__unset()

    __set() 在对象访问私有成员的时候自动被调用,达到了给你看,但是不能给你修改的效果!(在对象访问一个私有的成员的时候就会自动的调用该魔术方法) __get() 方法用于获取私有属性值.(在设置私 ...

  5. 跟着百度学PHP[6]超级全局变量

    超级全局变量在PHP 4.1.0之后被启用, 是PHP系统中自带的变量,在一个脚本的全部作用域中都可用. 参考文献:http://www.runoob.com/php/php-superglobals ...

  6. 跟着百度学PHP[4]OOP面对对象编程-10-静态关键字static

    使用static关键字可以将类中的成员标识为静态的,既可以用来标识成员属性,也可以用来标识成员方法. 以Person类为例,如果在person类中有一个“$country=’china’”的成员属性, ...

  7. 跟着百度学PHP[4]OOP面对对象编程-6-构造方法(__construct)和构析方法(__destruct)

    函数就是成员方法(方法有三:构造方法.成员方法.析构方法) 下面是两种方法. 构造方法和构析方法 00x1 构造方法 构造方法会在创建对象之后自动调用.其名称为__construct <?php ...

  8. 跟着百度学PHP[4]-OOP面对对象编程-2-属性和方法

    简单的说 变量就是成员属性函数就是成员方法(方法有三:构造方法[即为__construct].成员方法.析构方法[__destruct]) 成员方法和成员属性都是可以加修饰词.比如封装性的方法或者属性 ...

  9. 跟着百度学PHP[7]会话控制(session与cookie) 1.cookie的设置

    参考慕课网:http://www.imooc.com/learn/26 参考W3C:http://www.w3school.com.cn/php/php_cookies.asp setcookie() ...

随机推荐

  1. 在MySQL中出现Unknown column 'abc' in 'field list'怎么解决?

    update TABLE1 set NAME = '?' where  ID  ='?' 参数字段需要添引号.

  2. ES5/标准 ECMAScript 内置对象

    https://www.w3.org/html/ig/zh/wiki/ES5/%E6%A0%87%E5%87%86_ECMAScript_%E5%86%85%E7%BD%AE%E5%AF%B9%E8% ...

  3. 代码覆盖工具(gcov、lcov)的使用

    一.安装 gcov:是随gcc一起发布的,并不需要独立安装:lcov:其他博客说是随ltp发布的,结果下载下ltp之后编译了10多分钟,最后也没见lcov,最后到sourceforge下载了lcov单 ...

  4. Jumony Core 3,真正的HTML引擎,正式版发布

    Jumony是一个开源项目,已经有三年的历史了,在这三年中,秉承提供给.NET程序员完整的HTML掌控能力,Jumony历经无数次的改进,终于进入了一个新的阶段.Jumony Core 3是一个真正意 ...

  5. servlet的四个作用域

    作用域规定的是变量的有效期限,servlet有四个作用域对象,这里只说三个: 一. request作用域: 1.作用范围: 就是指从http请求发起,到服务器处理结束,返回响应的整个过程.在这个过程中 ...

  6. Curl扩展开启失败解决方案

    1.php.ini 开启curl扩展 2.设置有时候开启之后,curl还是不能将php目录下的libssh2.dll复制到apache/bin下.(基本上可以成功) 3. 如果没有开启成功,将php安 ...

  7. CodeForces 548D 单调栈

    Mike and Feet Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Subm ...

  8. C#中的try catch 和finally

    错误的出现并不总是编写应用程序的人的原因,有时应用程序会因为终端用户的操作而发生错误.无论如何,我们都应预测应用程序和代码中出现的错误. 这三个关键字try是必定要用的,要不然就失去了意义.然后cat ...

  9. AI贪吃蛇(二)

    前言 之前写过一篇关于贪吃蛇AI的博客,当时虽然取得了一些成果,但是也存在许多问题,所以最近又花了三天时间重新思考了一下.以下是之前博客存在的一些问题: 策略不对,只要存在找不到尾巴的情况就可能失败, ...

  10. elk系列6之tcp模块的使用

    preface tcp模块的使用场景如下: 有一台服务器A只需要收集一个日志,那么我们就可以不需要在这服务器上安装logstash,我们通过在其他logstash上启用tcp模块,监听某个端口,然后我 ...