【发布时间】:2017-03-17 01:45:22
【问题描述】:
我正在检查一个标签,如果它存在,那么标签应该存在,然后它进入存在和不存在的条件,这是我的代码:
function _checkTagsExists( $tag , $chimptags ){
foreach( $chimptags as $key => $value ){
if( $value == $tag ){
$response[ 'value' ] = $value;
$response[ 'exists' ] = 1;
$response[ 'tag' ] = $tag;
$response[ 'interests_id' ] = $key;
}
}
return $response;
}
$actags = array('existingtag1','existingtag2');
$interests = array('key1'=>'existingtag1','key2'=>'existingtag2');
foreach( $actags as $actag ){
$tagscheck = _checkTagsExists( $actag , $interests);
//if tag is already existing
if( $tagscheck[ 'exists' ] == 1 ){
$message[] = "exists";
}else{
$message[] = "NOT exist";
}
}
var_dump($message);
这段代码导致
array{0 => "exists", 1 => "NOT exist"}
但应该都是存在的
【问题讨论】:
-
你应该改写你的问题,因为它实际上很难理解。
-
我刚刚运行了你的代码,它成功了:array(2) { [0]=> string(6) "exists" [1]=> string(6) "exists" }
-
我的天啊,我也试过了,它工作了嗯我需要改写代码,因为我只使用了简单的数组
-
即使在您更新问题之前,您的过程似乎也很复杂。您是否将
array_intersect()和array_diff()视为实现目标的最短路径?我这样说是因为,如果这最终成为新成员臭名昭著的“阅读手册”问题之一,我可能会投反对票。 -
可悲的是,这是一个新帐户,我有一个旧帐户,但后来我使用了另一家公司的另一封电子邮件。这是一个声名狼藉的人在骂新手。如果我已经花了大约 4 个小时试图找出代码出了什么问题,我就不会问这个问题了
标签: php arrays function conditional