sasasada 2021-02-07 20:46 采纳率: 100%
浏览 78
已采纳

PHP 提示没有定义变量

<?php

    class C{
        function __call($name,$num){
            echo "方法名称:".$name."<p>";
            echo "参数存在个数:".count($num)."<p>";
            if(count($num) == 1){
                echo $this->list1($a);
            }
            if(count($num) == 2){
                echo $this->list2($a,$b);
            }
        }
        
        public function list1($a){
            return "这是list1函数";
        }
        
        public function list2($a,$b){
            return "这是list2函数";
        }
    }
    
    $a = new C;
    $a->listshow(4,3);
    

?>

刚刚开始接触多态。网页提示

我有两个疑问:1)怎样消除这个notice。2)构造函数__call($name,$num)里的形参$name为什么会接受值为'listhow',而不是$a->listhow(1,2)中的'1',$num为什么是参数个数,为不是$a->listhow(1,2)中的'2'。

  • 写回答

4条回答 默认 最新

  • 子幽 2021-02-08 09:00
    关注

    划红线的定义一下

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?