PHP current()在向其传递有效数组时返回false
我有一个size=1的数组,当我尝试获取当前数组时,它返回false,但数组有值PHP current()在向其传递有效数组时返回false,php,arrays,Php,Arrays,我有一个size=1的数组,当我尝试获取当前数组时,它返回false,但数组有值 $article=getArticle($id); if(is_array($article)) { $article=current($article); } getArticle返回多维数组,当var_在current之前转储时,我可以看到数组。 如果var_在当前值之后转储,则我得到false 如果我使用上面的代码(因为数组大小=1) 它工作没有任何问题 电流有什么问题 请帮忙
$article=getArticle($id);
if(is_array($article))
{ $article=current($article); }
getArticle返回多维数组,当var_在current之前转储时,我可以看到数组。
如果var_在当前值之后转储,则我得到false
如果我使用上面的代码(因为数组大小=1)
它工作没有任何问题
电流有什么问题
请帮忙
===================编辑========================
这是当前之前的var_转储
我已经删除了内容和摘要,因为它们是大文本
array(1) {
[529]=>
array(14) {
["articles_id"]=>
string(3) "529"
["issue"]=>
string(3) "161"
["membership_type"]=>
string(1) "1"
["el"]=>
array(9) {
["title"]=>
string(23) "AUTOBIANCHI A112 ABARTH"
["url"]=>
string(23) "autobianchi-a112-abarth"
["summary"]=>
string(397) " i have remove it
"
["content"]=>
string(11580) " i have remove it too large
"
["meta_keywords"]=>
string(23) "AUTOBIANCHI,A112,ABARTH"
["meta_description"]=>
string(402) " "
["created"]=>
string(10) "1362076380"
["last_updated"]=>
string(1) "0"
["status"]=>
string(1) "1"
}
["categories_id"]=>
string(2) "12"
["authors_id"]=>
string(2) "16"
["brands_id"]=>
string(2) "36"
["models_id"]=>
string(3) "206"
["engines_id"]=>
string(3) "174"
["o-categories"]=>
array(1) {
["values"]=>
array(1) {
[12]=>
array(15) {
["categories_id"]=>
string(2) "12"
["object_id"]=>
string(1) "1"
["parent_id"]=>
string(1) "0"
["path"]=>
string(2) "12"
["handler"]=>
string(0) ""
["icon"]=>
string(0) ""
["tpl"]=>
string(12) "articles.php"
["alias"]=>
string(1) "0"
["is_nav"]=>
string(1) "1"
["pos"]=>
string(2) "10"
["depth"]=>
string(1) "0"
["cts"]=>
string(0) ""
["mts"]=>
string(0) ""
["configuration"]=>
string(0) ""
["el"]=>
array(15) {
["categories_id"]=>
string(2) "12"
["lang"]=>
string(2) "el"
["category_name"]=>
string(13) "Classic"
["sub_title"]=>
string(0) ""
["summary"]=>
string(0) ""
["image"]=>
string(0) ""
["html_code"]=>
string(0) ""
["meta_title"]=>
string(0) ""
["url"]=>
string(13) "classic"
["url_path"]=>
string(13) "classic"
["meta_keywords"]=>
string(0) ""
["meta_description"]=>
string(0) ""
["created"]=>
string(10) "1355235888"
["last_updated"]=>
string(1) "0"
["status"]=>
string(1) "1"
}
}
}
}
["o-authors"]=>
array(1) {
["values"]=>
array(1) {
[16]=>
array(4) {
["authors_id"]=>
string(2) "16"
["object_id"]=>
string(2) "26"
["image"]=>
string(0) ""
["el"]=>
array(9) {
["authors_id"]=>
string(2) "16"
["lang"]=>
string(2) "el"
["name"]=>
string(31) "Last First"
["last_name"]=>
string(10) "Last"
["first_name"]=>
string(20) "First"
["nick_name"]=>
string(0) ""
["created"]=>
string(10) "1360567827"
["last_updated"]=>
string(1) "0"
["status"]=>
string(1) "1"
}
}
}
}
["o-brands"]=>
array(1) {
["values"]=>
array(1) {
[36]=>
array(6) {
["brands_id"]=>
string(2) "36"
["object_id"]=>
string(2) "17"
["brand_name"]=>
string(11) "AUTOBIANCHI"
["created"]=>
string(10) "1363179463"
["last_updated"]=>
string(1) "0"
["status"]=>
string(1) "1"
}
}
}
["o-models"]=>
array(1) {
["values"]=>
array(1) {
[206]=>
array(7) {
["models_id"]=>
string(3) "206"
["object_id"]=>
string(2) "18"
["brands_id"]=>
string(2) "36"
["model_name"]=>
string(11) "A112 ABARTH"
["created"]=>
string(10) "1363179480"
["last_updated"]=>
string(1) "0"
["status"]=>
string(1) "1"
}
}
}
["o-engines"]=>
array(1) {
["values"]=>
array(1) {
[174]=>
array(6) {
["engines_id"]=>
string(3) "174"
["object_id"]=>
string(2) "19"
["engine"]=>
string(5) "1.050"
["created"]=>
string(10) "1363179448"
["last_updated"]=>
string(1) "0"
["status"]=>
string(1) "1"
}
}
}
}
}
如果在getArticle()函数中复制数组,则其内部指针将丢失 我想这就是原因,它返回false。你能试试吗
$article=getArticle($id);
if (is_array($article)) {
$article = reset($article);
}
或
您可以查看和。您可以发布文章的var\u转储吗?@Mario:您可以检查var\u转储,我已经编辑了QCould You post getArticle函数?您可以执行
$article=current($article)
而不是$article=array\u shift($article)
。这里是+1供您注意和了解,但我会检查是否复制了该表,谢谢+1数组\u shift正在工作,但当前故障仍然不符合逻辑文档说明内部指针[…]已初始化为插入数组的第一个元素
。不确定数组是如何在代码中创建的,但可能您使用的函数不在数组中插入值。我在返回数组重置之前添加了GetArticles,效果很好。谢谢您为我节省了时间
$article=getArticle($id);
if (is_array($article)) {
$article = reset($article);
}
$article=getArticle($id);
if (is_array($article)) {
$article = array_shift($article);
}