簡體   English   中英

將貨幣字符串轉換為數字Drupal Views / PHP

[英]Convert a currency string to a number Drupal Views / PHP

我將CiviCRM(MySQL)數據庫中的字段輸入到貨幣的Drupal視圖中:

€ 350.00

如何將此貨幣/字符串轉換為數字格式以對其執行數學運算?

我試過了

  • 從顯示中刪除該字段並將其輸入全局數學字段以便“清理”它但它只顯示為零(它是一個字符串,因此數學字段無法讀取它)

  • 將其輸入全局文本字段會產生與上面相同的輸出

  • 關閉字段本身和全局數學字段中的所有格式,我將其輸入,輸出零,因為它仍然不被識別為數字

你可以使用這樣的函數:

function extractNumber($str) {
  return preg_replace('/[^0-9.]+/i','',$str);
}

echo extractNumber('€ 350.00');

這將導致:'350.00'這是數字。 對於'€1,350.00',它將返回'1350.00'。

你需要兩個步驟:

  1. 安裝視圖PHP (7.x-2.x-dev) - 這將在Views中為您提供全局PHP字段
  2. 排除原始字段(比如field_currency ),該字段保存Views中的顯示值(使用tickbox),然后在其他PHP字段中使用排除字段的值:

    • 在值代碼中: preg_match("#([0-9\\.]+)#", $row->field_currency, $match); return $match[0]; preg_match("#([0-9\\.]+)#", $row->field_currency, $match); return $match[0];
    • 在輸出代碼中: <?php echo $value; ?> <?php echo $value; ?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM