草庐IT

row_iterator

全部标签

php - 尝试理解 php 中的 Iterator 接口(interface)

我正在阅读http://php.net/manual/en/class.iterator.php,但很难理解示例#1的基本用法。问题:var_dump(__METHOD__);我知道你可以在这里使用变量,例如:var_dump($count),但是METHOD不是变量,还是全局变量/常量?foreach($itas$key=>$value){var_dump($key,$value);echo"\n";}如果我把它改成:foreach($itas$key=>$value){}如果我运行脚本,它仍然可以显示结果,为什么?var_dump($key,$value);结果是int0strin

php - 什么是 PHP 中的 Iterables 以及我们为什么使用它?

我刚刚从PHP7.1文档中听说了Iterables。但是没有得到它的实际用例,而且这个概念对我来说也不清楚。那么任何人都可以用一些简单的例子来解释它以更快地获取它吗?我想知道为什么以及在哪里使用它?可迭代的好处是什么? 最佳答案 这可能会有所帮助wiki.php.net/rfc/iterableiterable的主要优点是可以将类、方法或函数参数声明为iterable但不必关心实现,即数组、迭代器、生成器、等等。所以任何可迭代的东西都可以使用。 关于php-什么是PHP中的Iterabl

PHP/SQLite3 : Fatal error: Call to undefined function sqlite_num_rows()

当我调用函数sqlite_num_rows时出现此错误。它一定不是依赖性问题,因为其他Sqlite函数正在运行。我能够打开连接并从数据库获取数据。 最佳答案 晚了4年,但我遇到了同样的问题,所以这是我为遇到同样问题的任何人提供的解决方案//$dbisthedatabasehandle$result=$db->query("SELECT*FROMtable_name");$rows=0;//setrowcounterto0while($row=$result->fetchArray()){$rows+=1;//+1tothecount

php - SQL 错误 : SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails

我在使用PHP和SQL时遇到一些问题,PHP对我来说是新手,而且我缺乏SQL。我想在我的数据库表中添加值:值要么取自一个表单,要么取自另一个表(如FK)。这是数据库:createdatabaseAAA;useAAA;createtableassure(id_assurevarchar(13)notnull,nomvarchar(20),adressevarchar(50),mdpvarchar(60),primarykey(id_assure));createtablevehicule(id_vehiculevarchar(13)notnull,immatriculationvarch

php - iterator_to_array 截断输出

FROMPHPDOCiterator_to_array—Copytheiteratorintoanarrayarrayiterator_to_array(Traversable$iterator[,bool$use_keys=true])它适用于所有Traversable接口(interface),但为什么我在以下代码中输入错误:$data=array(0=>array(0=>1,),1=>array(0=>2,),2=>array(0=>3,1=>4,2=>5,),3=>array(0=>6,),4=>array(0=>7,),);$it=newRecursiveIteratorIt

PHP 面向对象 : How to get database rows as objects?

我可以在选择单行时很好地执行此操作,但无法完全理解为多行数据执行此操作。对于单行,我简单地实例化了一个新对象,它在幕后执行许多操作,基本上从数据库中生成一行作为我们的对象。示例:$object=newClassname($param);foreach($object->rowas$key=>$value){echo$key.":".$value."\n";}//outputid:1firstname:stevelastname:tooketc...这里有聪明的人能给我指出正确的方向吗?注意:只想为每一行创建一个对象,而不是为嵌套数组创建一个对象编辑:抱歉$object->row是从数据

php 切换到 mysqli : num_rows issue

我最近开始为MySQL改进的扩展更新一些代码,到目前为止一直很成功://oldcode-works$result=mysql_query($sql);if(mysql_num_rows($result)==1){$row=mysql_fetch_array($result);echo$row['data'];}//newcode-doesn'twork$result=$mysqli->query($sql)ortrigger_error($mysqli->error."[$sql]");if($result->num_rows==1){$row=$result->fetch_array

php - Zend 框架 : How to unset data rows in a Zend_Db_Table_Rowset object

我想遍历存储在Zend_Db_Table_Rowset对象中的数据行,然后删除/取消设置一些行,如果它们不满足某些条件的话。我可以使用toArray()只从对象中获取数据行,然后很容易取消设置我不需要的行。但由于我想保留我的对象以供进一步使用,所以我不想这样做。当然,一种解决方案是调整我的查询以便仅检索我需要的内容,但在这种情况下这是不可能的。至少我不知道怎么做。我尝试了以下方法,但没有用:foreach($rowsetas$key=>$row){if(!$condition==satisfied){unset($rowset[$key]);}}当然它不起作用,因为没有$rowset[

php - $stmt->num_rows 即使在调用 store_result 之后也返回 0

我希望使用mysqli/准备好的语句计算以下查询返回的记录数:$mysql=newmysqli(DB_SERVER,DB_USER,DB_PASSWORD,DB_NAME)ordie('Therewasaproblemconnectingtothedatabase');$stmt=$mysql->prepare('SELECTid,vcref,jobtitle,jobtype,jobintro,closingdateFROMjobsWHEREactive=1');$stmt->execute();$stmt->store_result;$stmt->bind_result($id,$v

php - 我应该在 PHP 中使用 Iterator 的哪个实现,为什么?

我正在尝试重构一个大型的旧项目,我注意到的一件事是一系列不同的Iterator实现:while($iterator->moveNext()){$item=$iterator->current();//dosomethingwith$item;}for($iterator=getIterator(),$iterator->HasNext()){$item=$iterator->Next();//dosomethingwith$item}while($item=$iterator->fetch()){//dosomethingwithitem}甚至是StandardPHPLibrary(S