LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 834|回复: 2

请教include文件如何执行

[复制链接]
发表于 2002-12-9 10:43:05 | 显示全部楼层 |阅读模式
include文件是否就如同将其代码写入调用的文件?
下面的这种情况是否能有输出?我试了几次都不行。只有将c.php中对b()的调用改为字符输出才会输出“ok”。下面这种调用是否有错,应如何更正?
在浏览器中执行a.php,而a.php包含了(include)b.php和c.php。b.php中定义了函数b(),c.php中定义了函数c()。
a.php
<?
include "b.php";
include "c.php";
...
echo c();
...
?>
b.php
<?
function b()
{
$b="ok";
return ($b);
}
?>
c.php
<?
...
function c()
{
echo b();
//echo "ok";
}
...
?>
发表于 2002-12-9 11:14:56 | 显示全部楼层
这样好象没问题,我执行了一下,结果正确。三个程序看附件
 楼主| 发表于 2002-12-9 17:47:19 | 显示全部楼层
多谢小凡!
偶上面的程序写得简单了。实际在测试中第一帖的程序是可以实现,而如果用下面的程序就无法实现了。
a.php
<?
include "b.php";
include "c.php";
      if ($result)
      {
          select_form(1,'True');
      }
      else
      {
          select_form(1,'False');
      }
?>
b.php
<?
function show_msg($msgid)
{
    switch ($msgid)
    {
        case 0:
             $msg=="Ok,please insert another one.";
             break;
        case 1:
             $msg=="";
             break;
        case 2:
             $msg=="";
             break;
        default:
             $msg="none";
    }
    return ($msg);
}
?>
c.php
<?
function select_form($form_id,$str_form)
{
    $j=$form_id;
    switch ($j)
    {
        case 0:
             $msgword="";
             break;
        case 1:
             $data_in=$str_form;
                if ($data_in=='')
                {
                   $msgword="";
                }
                elseif ($data_in=='True')
                {
                   //$msgword=$data_in;  <——可以输出True
                   $msgword=show_msg(0);
                }
                    else
                    {
                       $msgword="False";
                    }
              break;
        default:
              echo "haha";
     }
     echo $msgword;
}
?>
在浏览器中输入a.php?result=True,无法得到输出。
偶现在怀疑是否是用到了php关键字?还是因为嵌套太多的缘故?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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