php中函数传递参数有哪两种

一、函数传递参数的两种方式

在PHP中,函数传递参数一般有两种方式:

1. 值传递:将实参的值复制一份给形参,函数中对形参的任何修改不会影响到实参的值。

示例代码:

```

function change($a) {

$a = $a + 1;

echo "函数内部的变量值为:".$a."
";

}

$num = 5;

change($num);

echo "函数外部的变量值为:".$num;

```

输出结果:

```

函数内部的变量值为:6

函数外部的变量值为:5

```

可以看到,函数内部对变量 `$a` 做了 +1 的操作,但是这并没有影响到函数外部的变量 `$num` 的值,因为这是值传递。

2. 引用传递:将实参的内存地址传递给形参,函数中对形参的修改会影响到实参的值。

示例代码:

```

function change(&$a) {

$a = $a + 1;

echo "函数内部的变量值为:".$a."
";

}

$num = 5;

change($num);

echo "函数外部的变量值为:".$num;

```

输出结果:

```

函数内部的变量值为:6

函数外部的变量值为:6

```

可以看到,函数内部改变了 `$a` 的值,并且影响到了 `$num` 的值,因为这里采用了引用传递。

二、方便快捷的PHP长文章分页函数

在开发一个长篇文章的网站时,我们需要将文章分成多页来展示,以提高用户的阅读体验。为了方便开发,我们可以编写一个PHP长文章分页函数,实现自动分页的功能。

以下是一个比较简单的PHP长文章分页函数:

```

function page($content, $page_size = 1024) {

$content = trim($content);

$content = str_replace("\r\n", "\n", $content);

$content = str_replace("\r", "\n", $content);

$content = preg_replace("/\n{3,}/", "\n\n", $content);

$content = explode("\n\n", $content);

$count = count($content);

if ($count <= 1) {

return $content[0];

}

$output = "";

for ($i = 0; $i < $count; $i++) {

$output .= "

".nl2br($content[$i])."
\n";

}

return $output;

}

```

该函数接受两个参数,第一个参数 `$content` 是长文章的内容,第二个参数 `$page_size` 是每页显示的字节数,默认为1024。函数的返回值是分好页的HTML代码。

该函数实现的思路比较简单:

1. 将文章内容的换行符进行统一处理,以便后续分页;

2. 以换行符为分界线,将文章拆分为若干段;

3. 根据 `$page_size` 的值,将文章拆分为若干页,并将每页的内容封装在 `

...
` 标签内;

4. 返回分好页的HTML代码。

示例代码:

```

$content = "长文章的内容...";

echo page($content);

```

输出结果:

```

第一页的内容...

第二页的内容...

第三页的内容...

...

```

页面的CSS样式:

```

```

使用该函数,我们可以方便快捷地实现长文章的分页功能,提高用户的阅读体验。 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.ynyuzhu.com/

点赞(65) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部