php中遍历数组查找数组元素是否存在与当前字符串,如果不存在就输出当前字符串,如果存在,则输出数组的键值

WBOY
发布: 2016-08-23 09:17:49
原创
1951 人浏览过

<code><?php $lang_Log=array(
    'rep-cache during mirror is cleard'=>'规则缓冲清除',
    'Starting replication'=>'开始规则',
    'Wait -> Brk'=>'镜像状态改变,由等待到停止状态',
    'OK -> Wait'=>'镜像状态改变,由OK到等待状态',

);


$logs = sd_get_log_sys_by_uuid(uuid);

for($i=0; $i $v) {
            $pos = strpos($logs[$i], $k);
            if($pos !== false){
                echo $v;
                break;
            }
        } 
    }
}

?>
</code>
登录后复制
登录后复制

我想做的就是遍历数组查找数组元素是否存在与当前字符串,如果不存在就输出当前字符串,如果存在,则输出数组的键值。
就是翻译功能。

1.判断日志在数组中是否有对应中文(因为日志有的是死的).
2.判断日志部分字符串是否有对应的中文(有的日志是包含了变量的语句,所以需要用部分字符串匹配,然后翻译).
3.因为外层有个logs数组的循环语句,所以用break,不用exit.

回复内容:

<code><?php $lang_Log=array(
    'rep-cache during mirror is cleard'=>'规则缓冲清除',
    'Starting replication'=>'开始规则',
    'Wait -> Brk'=>'镜像状态改变,由等待到停止状态',
    'OK -> Wait'=>'镜像状态改变,由OK到等待状态',

);


$logs = sd_get_log_sys_by_uuid(uuid);

for($i=0; $i $v) {
            $pos = strpos($logs[$i], $k);
            if($pos !== false){
                echo $v;
                break;
            }
        } 
    }
}

?>
</code>
登录后复制
登录后复制

我想做的就是遍历数组查找数组元素是否存在与当前字符串,如果不存在就输出当前字符串,如果存在,则输出数组的键值。
就是翻译功能。

1.判断日志在数组中是否有对应中文(因为日志有的是死的).
2.判断日志部分字符串是否有对应的中文(有的日志是包含了变量的语句,所以需要用部分字符串匹配,然后翻译).
3.因为外层有个logs数组的循环语句,所以用break,不用exit.

为什么不走else呢?
你循环每一个词,循环第一个是rep-cache during mirror is cleard
存在于$s里吗?
不存在
走不走else

运不运行exit;
运行
还继不继续执行?
不继续
后面的词还检查吗?
不检查

<code>foreach ($lang_Log as $k=> $v) {
    $pos = strpos($s, $k);
    if($pos !== false){
        echo $v;
        break;
    }
} 
</code>
登录后复制

$s = "mirror return 0, peer 94, bytes recv [En/De] [2005667596/2005667596 = 100]";
foreach ($lang_Log as $k=> $v) {

<code>$pos = strpos($s, $k);
if($pos !== false){
    echo 'value = ' .  $v . "<br>;
}else{
    echo 'key = ' .  $k . "<br>;
}</code>
登录后复制

}

相关标签:
php
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!