在 PHP 数字中添加逗号


Adding commas to a php number

首先,这个问题似乎以前已经回答过,但是我似乎无法将任何答案应用于此版本。

如果我将下面的 19000 更改为 19,000,则无法提交输出的表单,因为它不显示为数字。

听说我可以使用DecimalFormat,但我正在努力弄清楚我把线放在哪里?

foreach($wb_spc_array['step1'] as $key=>$value){
  $array = array(
    "#type" => "textfield", 
    "#title" => $value['title'], 
    "#required" => TRUE, 
    '#default_value' => empty($form_state['storage']['values']['step1'][$key]) ? '190000' : $form_state['storage']['values']['step1'][$key],
    '#element_validate' => array('wb_spc_number_element_validate'),    
    '#size' => 20,    
  );

完整的 php 模块可以在 (http://jsfiddle.net/ytv1v8r7/) 中看到。

如果它对自定义Drupal模块有区别,请参阅此处。

非常感谢您的时间,

你可能想试试:

elseif($step == 1){
    $form['step1'] = array('#type'=>'fieldset', '#title'=>"Step {$step} (of {$section_count}) - Current Business Figures", '#attributes'=>array('class'=>array('step1')));
    $number = 190000;
    // english notation (default)
    $english_format_number = number_format($number);//190.000
    foreach($wb_spc_array['step1'] as $key=>$value){
      $array = array(
        "#type" => "textfield", 
        "#title" => $value['title'], 
        "#required" => TRUE, 
        '#default_value' => empty($form_state['storage']['values']['step1'][$key]) ? $english_format_number : $form_state['storage']['values']['step1'][$key],
        '#element_validate' => array('wb_spc_number_element_validate'),    
        '#size' => 20,    
      );
      if(@$value['type'] == "percentage"){
        $array = wb_spc_form_element_select_percentage();
        $array["#title"] = $value['title'];
        $array['#attributes']['class'] = array("wb_spc_percentage");
        $array['#default_value'] = empty($form_state['storage']['values']['step1'][$key]) ? '' : $form_state['storage']['values']['step1'][$key];
      }
      $form['step1'][$key] = $array;
    }
}