Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 变量未检测为数组_Php - Fatal编程技术网

Php 变量未检测为数组

Php 变量未检测为数组,php,Php,我正在尝试创建一个文档注册代码(仍然没有编写函数),并尝试执行echo以检查代码是否正常工作。不幸的是,它显然不起作用,因为我得到一个错误$tag不是数组,而实际上是数组。 我得到的错误是: 警告:count():参数必须是在第37行的C:\xampp\htdocs\Intranet\Argumentarios\admin\uploader.php中实现可数的数组或对象 注意:第38行C:\xampp\htdocs\Intranet\Argumentarios\admin\uploader.ph

我正在尝试创建一个文档注册代码(仍然没有编写函数),并尝试执行echo以检查代码是否正常工作。不幸的是,它显然不起作用,因为我得到一个错误$tag不是数组,而实际上是数组。 我得到的错误是:

警告:count():参数必须是在第37行的C:\xampp\htdocs\Intranet\Argumentarios\admin\uploader.php中实现可数的数组或对象

注意:第38行C:\xampp\htdocs\Intranet\Argumentarios\admin\uploader.php中的未初始化字符串偏移量:0 标签

警告:count():参数必须是在第37行的C:\xampp\htdocs\Intranet\Argumentarios\admin\uploader.php中实现可数的数组或对象”

代码是:

class Paquete{
    //Variable
    public $tag = array();
    //Funcion
    public function guardar($tag){
        $this->tag = $tag;
    }
    public function grabar($tag){
        //INSERT....
        echo "Tag". $this->tag . "<br/>";
    }
    public function ciclos() {
        for($i = 0; $i < count($this->tag); $i++){
            Paquete::grabar($this->tag[$i]);
        }
    }
}

classpaquete{
//变数
public$tag=array();
//功能
公共功能guardar($tag){
$this->tag=$tag;
}
公共函数grabar($tag){
//插入。。。。
回显“标记”。$this->Tag.
; } 公共职能{ 对于($i=0;$itag);$i++){ Paquete::grabar($this->tag[$i]); } } }
guardar()
应该将
$tag
推到
$this->tag
数组上,而不是用单个标记替换数组


另外,
grabar
不应该回显
$this tag
,它应该回显
$tag
参数。它应该声明为静态,因为它不需要使用
$this

class Paquete{
    //Variable
    public $tag = array();
    //Funcion
    public function guardar($tag){
        $this->tag[] = $tag;
    }
    public static function grabar($tag){
        //INSERT....
        echo "Tag". $tag . "<br/>";
    }
    public function ciclos() {
        foreach ($this->tag as $tag) {
            Paquete::grabar($tag);
        }
    }
}
classpaquete{
//变数
public$tag=array();
//功能
公共功能guardar($tag){
$this->tag[]=$tag;
}
公共静态函数grabar($tag){
//插入。。。。
回显“Tag”。$Tag.“
”; } 公共职能{ foreach($this->tagas$tag){ 帕奎特::格拉巴($tag); } } }
$Packete->guardar($tag1);
$this->tag
设置为
$tag1
中的字符串,因此它不再是数组。此外,
grabar()
应该回显
$tag
,而不是
$this->tag