如何将两个php函数合并为一个带有自定义字段的函数

时间:2017-01-02 作者:Pete

我试图用我的自定义字段获得2个php函数,以便与自定义字段一起工作。他们两个人都很好,但我不能让他们一起工作。

第一个函数隐藏自定义字段的最后X个字符

<?php $custom_field = (string) get_post_meta( $post->ID, "XYZ", true ); echo substr( $custom_field, 0, -6 ); ?>
第二个函数删除自定义字段的空格

<?php $custom_field = (string) get_post_meta( $post->ID, "XYZ", true ); echo str_replace(\' \', \'\', $custom_field); ?>
我乐观地试图找到一个简单的解决方案,这是一场灾难。。。

<?php $custom_field = (string) get_post_meta( $post->ID, "XYZ", true ); echo str_replace(\' \', \'\', $custom_field); echo substr( $custom_field, 0, -6 ); ?>   

2 个回复
最合适的回答,由SO网友:prosti 整理而成

我也有同样的问题。

echo substr( $custom_field, 0, -6 );
echo str_replace(\' \', \'\', $custom_field);
我想我是这样解决的。

echo substr( str_replace(\' \', \'\', $custom_field), 0, -6 );

SO网友:Tunji

@prosti 是的,如果您正在寻找一个函数,那么可以将这两个调用包装在一个可重用函数中。

function wpse250999_combine( $string ) {
    $output = substr( $string, 0, -6 );
    $output = str_replace(\' \', \'\', $output );
    return $output;
}

USAGE:

$custom_field = wpse250999_combine( (string) get_post_meta( $post->ID, "XYZ", true ) );
echo $custom_field;

相关推荐

无法在模板函数.php中使用IS_HOME

我试图在标题中加载一个滑块,但只在主页上加载。如果有帮助的话,我正在使用Ultralight模板。我正在尝试(在template functions.php中)执行以下操作:<?php if ( is_page( \'home\' ) ) : ?> dynamic_sidebar( \'Homepage Widget\' ); <?php endif; ?> 但这行不通。现在,通过快速的google,我似乎需要将请