在数组中使用两个字符串函数

时间:2017-11-06 11:18:47

标签: php arrays

我需要对我正在构建的数组中的数据使用 str_replace ucfirst 函数。

当前代码:opening_times[ str_replace( $venue_slug . '_', '', $day) ] = $time;

我尝试用逗号分隔它但是没有用。

$opening_times[ str_replace( $venue_slug . '_', '', $day), ucfirst( $day ) ] = $time;

工作时,我的当前输出如下。我只需要把第一个字母大写。 但不是使用CSS。

monday 12:00 - 00:00

完整代码:

$days = [
    $venue_slug . '_monday',
    $venue_slug . '_tuesday',
    $venue_slug . '_wednesday',
    $venue_slug . '_thursday',
    $venue_slug . '_friday',
    $venue_slug . '_saturday',
    $venue_slug . '_sunday',
    ];

$opening_times = array();

foreach ( $days as $day ) {

    $opening_time = get_acf_option( $day . '_open' );
    $closing_time = get_acf_option( $day . '_close' );

    if ( $opening_time && $closing_time ) {
        if ( $opening_time !== '' && $closing_time !== '' ) {

            $time = $opening_time . ' - ' . $closing_time;

        } else {
            $time = 'Closed';
        }
    }

    $opening_times[ str_replace( $venue_slug . '_', '', $day), ucfirst( $day ) ] = $time;
}

2 个答案:

答案 0 :(得分:0)

对第一个结果执行第二次操作。

更改此

str_replace( $venue_slug . '_', '', $day), ucfirst( $day )

ucfirst( str_replace( $venue_slug . '_', '', $day) )

答案 1 :(得分:0)

你可以尝试在第一个字母上使用大写字母表示

的整个输出
ucfirst(*your code*);

希望这有帮助