返回可以迭代的属性的PHP类?
很抱歉,对于PHP,我充其量只是个新手,所以请温柔一点 我创建了一个类,它将从数据库中获取一些信息,并将各种值作为类的属性返回。这很好,因为我只要求一排 像这样:返回可以迭代的属性的PHP类?,php,mysql,Php,Mysql,很抱歉,对于PHP,我充其量只是个新手,所以请温柔一点 我创建了一个类,它将从数据库中获取一些信息,并将各种值作为类的属性返回。这很好,因为我只要求一排 像这样: $mydata = new mydataclass; $mydata->getaparticularrowofdata($uniqueid); $value1 = $mydata->variable1; $value2 = $mydata->variable2; $value3 = $mydata->var
$mydata = new mydataclass;
$mydata->getaparticularrowofdata($uniqueid);
$value1 = $mydata->variable1;
$value2 = $mydata->variable2;
$value3 = $mydata->variable3;
我想做一些类似的事情:
$mydata = new mydataclass;
$mydata->getafewrowsofdata($somefieldvaluetomatch);
if ($mydata->count != 0) {
// some sort of loop to iterate through each row until at the end, each time replacing the property values with the new data
echo $mydata->variable1;
echo $mydata->variable2;
echo $mydata->variable3;
//
}
这显然只是一个例子。希望我说的有道理
这可行吗?如果是这样,最好使用一些示例代码:)
答案可能很简单,但由于某种原因,今晚我似乎无法集中注意力
非常感谢 这在某种程度上取决于您返回的结果集的格式,但以下是一些示例,说明如何使用您的示例迭代结果集 如果将结果集作为对象返回:
$resultsObject = $mydata->getafewrowsofdata($somefieldvaluetomatch);
foreach($resultsObject as $result)
{
echo $result->variable1;
echo $result->variable2;
echo $result->variable3;
}
如果将结果集作为数组返回:
$resultsArray = $mydata->getafewrowsofdata($somefieldvaluetomatch);
foreach($resultsArray as $result)
{
echo $result['variable1'];
echo $result['variable2'];
echo $result['variable3'];
}
与其在检索数据并随后遍历数据时修改
mydataclass
的属性(这有很多副作用,并且您不能使用类同时选择多组数据),我建议让getafewrowsofdata
方法返回一个数据数组(每行一个元素)或返回实现接口的结果对象
如果您正在使用PDO,一个简单的方法是让
getafewrowsofdata
函数使用PDO方法。这甚至可以返回自定义类的对象(参见示例4).我不清楚您到底想要什么。还有,为什么要回显您的数据?回显将文本发送到浏览器。这就是它的全部功能。您说要替换这些值。您的意思是在数据库中?在运行时脚本中?还是在浏览器中?我不清楚。php手册在迭代器界面上有一些很好的示例—通读输入代码,然后查看是否还有其他问题。