【问题标题】:How to change format number in PHP如何在 PHP 中更改格式编号
【发布时间】:2021-12-10 07:21:28
【问题描述】:

我对 wordpress 帖子有以下视图计数功能。但是,出现的数字是 2000,而我试图获得 2.000。

位于 Functions.php 中

add_action ('elementor/query/popular_post', function ($query) {
    $query->set('orderby', 'meta_value_num');
    $query->set('meta_key', 'views');
});

位于 Header.php 中

<?php
if (is_singular('post')) {
    $count = get_field('views');
    $count ++;
    update_field('views', $count);
}
?>

我尝试谷歌搜索并多次更改代码,但无法更改数字的格式。有没有人好心给点提示?

很抱歉无法在 JsFiddle 或类似功能中复制该功能,但我相信这是不可能的。

我不懂php,我是个粉丝。

【问题讨论】:

    标签: php wordpress advanced-custom-fields number-formatting


    【解决方案1】:

    您可以在此处使用 number_format() 函数: www.w3schools.com/php/func_string_number_format.asp

    请参见此处设置为千位分隔符的最后一个示例: https://www.w3schools.com/php/phptryit.asp?filename=tryphp_func_string_number_format

    我相信你的代码更新如下:

    update_field('views', number_format($count,0,",","."));
    

    【讨论】:

    • 我已经尝试过使用 PHP 和 W3 参考,但我不知道在哪里应用这些代码位的格式号。
    • 我已经通过添加到代码中的更改更新了我的答案
    • 有效!非常感谢您的帮助。
    • 在发布问题之前,我已经查阅了参考资料并尝试“玩”代码。但是,我不知道在哪里放置格式号的代码部分。无论如何,我非常感谢堆栈用户的帮助,我总是学习新事物。
    • 将格式化的数字写入字段,听起来不是一个好主意。您将在此处存储2.000,这 can 只能是一个字符串值。因此,当它被读回时,尝试使用++ 增加该值将需要首先将2.000 转换为一个数字,其结果将是2,因此++ 将导致3 .这种格式应该只应用在值得到输出的地方,而不是它得到存储的地方。
    【解决方案2】:

    参见PHP: number_format上的参考

    【讨论】:

    • 我看到你还没有 50 reps,但这实际上只是一个评论。这种类型的答案会吸引反对票或被标记为我没有 DV,如果发生这种情况,您将失去代表点并且需要更长的时间才能达到您需要评论的 50 个代表任何问题。在那之前,坚持那些问得好,因此无需澄清就能轻松回答的问题。 meta.stackexchange.com/questions/214173/…
    • 或者,将此功能添加到 OP 的代码中并作为答案的一部分发布
    • 我很抱歉这个问题的表达不好,但我一无所知,我不知道如何定位这个问题。我只是拿了给出视图数量的代码并在堆栈上发布,认为这只是 PHP 的问题。恕我无知,Op的代码是什么意思?
    • OP = 原始发帖者(您,发布问题的人)
    猜你喜欢
    • 2010-09-07
    • 1970-01-01
    • 2016-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-18
    相关资源
    最近更新 更多