如何利用数组函数映射数字

时间:2020-06-01 作者:Chad H

我本以为这很简单,但我现在很难接受。我有这个函数,我很难映射数字。我有一个电子表格,我用WP All导入,并将此功能用于各种其他非数字字段,效果很好。

在示例中,我使用此函数的其他字段用于\'Gasoline\' => \'Gas\' 它将“汽油”映射到“汽油”类别,没有任何问题,但是当只使用数字(2、4、6等)时,如下图所示,它不会映射到数据库中的“X乘客”类别。我希望我能恰当地解释这一点。

有人知道我做错了什么吗?提前谢谢你。

function seating_translate_data_sample( $data ) {

    if (empty($data)) {
        echo "Not Specified";
    }

    $map = array(
        \'2\'  => \'2 Passenger\',
        \'4\'  => \'4 Passenger\',
        \'6\'  => \'6 Passenger\',
        \'8\'  => \'8 Passenger\',
        \'10\' => \'10 Passenger\',
    );

    foreach ( $map as $partial_match => $mapped_value ) {
        if ( stristr( $data, $partial_match ) ) {
            return $mapped_value;
        }
    }
    return $data;
}

1 个回复
SO网友:vancoder

我猜是这样$data 被视为整数,因此stristr 正在返回false。

尝试显式强制转换$data 作为字符串:

if ( stristr( strval( $data ), $partial_match ) ) {
            return $mapped_value;
        }

相关推荐

Div-Wrap with Functions.php in ChildTheme Using Shorcode!

我只想为一个简单样式的DIV包装器创建一个短代码。在WordPress的网站上,我想添加如下内容:[quotehead]Headline text[/quotehead] ...a normal blockquote from wordpress... 输出应为:<div class=\"block_header\">Headline text</div> 我的内部功能functions.php (在childtheme中)包含以下内容:/**