0

在我网站的管理部分,有一个按钮可以从我的数据库中提取包含数据的 Excel 文件。实际上,它是使用 PEAR 单击按钮时创建的 Excel 文件。我使用 SQL 查询从我的 SQL Server 2008 数据库中获取必要的信息。

其中一个名为“number1”的列包含一个范围为 1-9999 的数字。我一直在寻找一种方法,当它已经没有 4 位数字时,让它在数字前面加上零,但直到现在我还没有运气。例如,如果数据库中的数字是 12,我希望它在我的 Excel 工作表中显示为 0012。

目前使用的代码如下:

if ($j == 15){
$worksheet->write($variable1, $j , $variable2[$i][$j], $text222);
    }
where $variable1 = 0; $variable2 = ("my sql query")

感谢您的帮助。

编辑:答案(S)

$number = str_pad($value, 4, '0', STR_PAD_LEFT);

或者

JAGAnalyst 的答案,我在代码中实际使用的答案。

4

1 回答 1

1

或者,您也可以编辑 SQL 查询以返回四字符文本字符串而不是数字,包括替换功能,即

, CASE
WHEN Len(number1) = 1 THEN '000' + CAST(number1 AS VARCHAR(4))
WHEN Len(number1) = 2 THEN '00' + CAST(number1 AS VARCHAR(4))
WHEN Len(number1) = 3 THEN '0' + CAST(number1 AS VARCHAR(4))
ELSE CAST(number1 AS VARCHAR(4))
END AS NEW

这实际上会改变提取的值,而不是简单地改变格式。

于 2013-04-08T20:41:30.573 回答