php调用的函数中的语句不执行

<?php$fp=fopen("content.txt",'w');if(!$fp){echo'文件不存在';exit;}functionwriteMsg(){fwrit... <?php
$fp=fopen("content.txt",'w');
if (!$fp)
{
echo'文件不存在';
exit;
}
function writeMsg() {
fwrite($fp,"b");
}
fwrite($fp,"a");
writeMsg();
fclose($fp);
?>
求高手指点,这段php代码为什么fwrite($fp,"a");可以执行,把a写到文件中,但是fwrite($fp,"b");不可以执行
展开
 我来答
匿名用户
推荐于2016-10-06
展开全部

function 函数内和函数外的变量不可以共用, 在常规下, 函数内和函数外的变量, 都是局部变量, 并不是全局变量, 不能相互调用

除非:

1、 进行引用

2、设置全局变量, 比如:

function writeMsg() {
    global $fp;
    fwrite($fp,"b");

}

3、将变量作为参数提供给函数进行执行, 比如:

function writeMsg( $File ) {

    fwrite( $File, "b" );

}
writeMsg( $fp );

其实, 你上面这么多代码, 可以用一条代码来执行:

file_put_contents('content.txt', 'b') or die('文件创建写入失败');
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式