我正在处理如下所示的php代码,该代码扫描目录($ src_dir)并列出所有mp4文件。
$src_dir = ('\\\ABCD-ST-001\Audio_Test\podcast\incoming_folder');
$mp4_files = preg_grep('~\.(mp4)$~', scandir($src_dir));
print_r(array_values($mp4_files)); // LineA
这是从 Line#A 获得的 O / P :
Array ( [0] => 36031P.mp4 [1] => hello.mp4 )
我在索引 0 和索引 1 中得到两个值。第一个是 36031P.mp4 ,第二个是 hello.mp4
此后,我编写了一个脚本,该脚本将数据插入表Podcast_Export
中。
$db->exec("INSERT INTO Podcast_Export ('House#', 'Status') VALUES ('array_values($mp4_files)', 'Go')"); /* have to place this question on SO*/
在运行上述脚本时,我在表中获取了不需要的以下数据。
array_values(Array) Go
array_values(Array) Go
问题陈述:
我想知道我应该在上面的脚本中进行哪些更改,以便它将以下数据插入表中:
36031 Go
hello Go
答案 0 :(得分:1)
您要插入字符串值'array_values($mp4_files)'
,只需删除该值周围的引号即可。像这样:
$db->exec("INSERT INTO Podcast_Export ('House#', 'Status') VALUES (array_values($mp4_files), 'Go')");
但是,如果您删除array_values
周围的引号,则会将以下数组作为字符串Array ( [0] => 36031P.mp4 [1] => hello.mp4 )
因此,最好在此处与$mp4_files
数组一起使用循环并插入数据。
旁注:
我建议您在House#
列中使用其他名称,例如house_no
。