PHP使用变量名称上载文本文件

时间:2013-08-02 17:07:41

标签: php mysql

所以现在我正在尝试上传.txt文件并将其发送到mysql。那部分工作正常。但我有我的代码寻找一个设置文件名,如text.txt。将txt文件ftp到目录中,然后按下php文件中的按钮,它会查找该文件,读取它并将其发送到数据库。但是,该文件将在日常使用不同的名称进行ftp。它将像这样上传:test20130802.txt

如何让我的代码查找该日期变量?它也不总是今天的日期。

以下是我当前代码的一部分:

$handle = @fopen("test.txt", "r"); 

$values='';

while (!feof($handle)) 
{
$buffer = fgets($handle, 4096); 
//MYSQL QUERY......
}

非常感谢任何帮助。谢谢。

1 个答案:

答案 0 :(得分:0)

我认为这是相当简单的。

首先,将文件“test20130802.txt”的名称放入变量中。 e.g。

$readTestFile = "test20130802.txt"; //Or however you are taking the file name as input

希望您获得标准文件名。 (按标准来说,我的意思是前几个字母总是一致的。)

如果是标准文件名:

$dateYearChar = array();
$dateMonthChar = array();
$dateDateChar = array();

for($i=0;$i<4;$i++)
$dateYearChar[$i] = $readTestFile[$i+4];
for($i=0;$i<2;$i++)
$dateMonthChar[$i] = $readTestFile[$i+8];
for($i=0;$i<2;$i++)
$dateDateChar[$i] = $readTestFile[$i+10];

$dateYear = intval($dateYearChar);
$dateMonth = intval($dateMonthChar);
$dateDate = intval($dateDateChar);

编辑:如果你想查找具有指定格式的文件名,你可以做相反的事情。

e.g。

$fileName = "test" . $dateYear . $dateMonth . $dateDate . ".txt"