我想将信息从一个.php文件传递到另一个class.php
这就是我在main.php中的内容
<?php
require 'combinations.php';
$string = "12345";
$num = 2;
$c = Combinations($string, $num);
echo $c;
?>
我想传递$ string和$ num,它将从我的主文件更改为组合类。
这是我的combination.php
<?php
class Combinations implements Iterator
{
protected $c = null;
protected $s = null;
protected $n = 0;
protected $k = 0;
protected $pos = 0;
function __construct($s, $k) {
if(is_array($s)) {
$this->s = array_values($s);
$this->n = count($this->s);
} else {
$this->s = (string) $s;
$this->n = strlen($this->s);
}
$this->k = $k;
$this->rewind();
}
function key() {
return $this->pos;
}
function current() {
$r = array();
for($i = 0; $i < $this->k; $i++)
$r[] = $this->s[$this->c[$i]];
return is_array($this->s) ? $r : implode('', $r);
}
function next() {
if($this->_next())
$this->pos++;
else
$this->pos = -1;
}
function rewind() {
$this->c = range(0, $this->k);
$this->pos = 0;
}
function valid() {
return $this->pos >= 0;
}
protected function _next() {
$i = $this->k - 1;
while ($i >= 0 && $this->c[$i] == $this->n - $this->k + $i)
$i--;
if($i < 0)
return false;
$this->c[$i]++;
while($i++ < $this->k - 1)
$this->c[$i] = $this->c[$i - 1] + 1;
return true;
}
}
foreach(new Combinations($string, $num) as $substring)
echo $substring, ' ';
?>
这些是我得到的错误:
注意:未定义的变量:第58行的C:\ xampp \ htdocs \ recSII \ combinations.php中的字符串
注意:未定义的变量:第58行的C:\ xampp \ htdocs \ recSII \ combinations.php中的num
致命错误:在第6行的C:\ xampp \ htdocs \ recSII \ main.php中调用未定义的函数组合()
致命的错误行是$ c = Combinations($ string,$ num);
答案 0 :(得分:0)
在实际定义它使用的变量之前,首先require
文件。在定义变量之后执行require
。
除此之外,您通常应避免在“定义类”文件中使用“do stuff”代码。