我有一个Java属性文件,它看起来差不多是这样的:
FD6AEA14B3581255C5D40451CDFF8168.hash=90AD759FF0B41ABD7260EF1044E75330
FD6AEA14B3581255C5D40451CDFF8168.path=Volumes/UA08154711/08154711/Lorem ipsum dolor sit amet, consetetur sadipscing/Lorem ipsum dolor sit amet, consetetur sadipscing/07 - Lorem ipsum dolor sit amet, consetetur sadipscing - Lorem ipsum dolor sit amet, consetetur sadipscing (Album Version).mp3
EA3F9134319E314BC85D59D16122800.fileName=04 - Lorem ipsum dolor sit amet, consetetur sadipscing (Album Version).mp3
EA3F9134319E314BC85D59D16122800.hash=88302129514633AAED4553F1B0CCB6B8
EA3F9134319E314BC85D59D16122800.path=Volumes/UA08154711/08154711/Lorem ipsum dolor sit amet, consetetur sadipscing/Lorem ipsum dolor sit amet, consetetur sadipscing/04 - Lorem ipsum dolor sit amet, consetetur sadipscing (Album Version).mp3
EAFB12EE4094D48A2B1BD367E5737C80.fileName=._02 - Lorem ipsum dolor sit amet, consetetur sadipscing (Explicit Version).mp3
EAFB12EE4094D48A2B1BD367E5737C80.hash=34FB1D1E3523334A89D03DE707C00968
EAFB12EE4094D48A2B1BD367E5737C80.path=Volumes/UA08154711/08154711/Lorem ipsum dolor sit amet, consetetur sadipscing/Lorem ipsum dolor sit amet, consetetur sadipscing/._02 - Lorem ipsum dolor sit amet, consetetur sadipscing (Explicit Version).mp3
fileSize=1024595340
Number=03173729
文件的目标是files/03173729.meta
我想用php解析文件,这样我就可以将数据保存在mySQL数据库中。代码:
$filepath = "files/03173729.meta";
$fileContents = file_get_contents("$filepath");
echo $fileContents;
$result = parse_properties($fileContents);
//Fetch the contents from the result array and add them to the database
function parse_properties($txtProperties) {
$result = array();
$lines = split("'n", $txtProperties);
$key = "";
$isWaitingOtherLine = false;
foreach ($lines as $i => $line) {
if (empty($line) || (!$isWaitingOtherLine && strpos($line, "#") === 0))
continue;
if (!$isWaitingOtherLine) {
$key = substr($line, 0, strpos($line, '='));
$value = substr($line, strpos($line, '=')+1, strlen($line));
}
else {
$value .= $line;
}
/* Check if ends with single ''' */
if (strrpos($value, "''") === strlen($value)-strlen("''")) {
$value = substr($value,0,strlen($value)-1)."'n";
$isWaitingOtherLine = true;
}
else {
$isWaitingOtherLine = false;
}
$result[$key] = $value;
unset($lines[$i]);
}
return $result;
}
但是我不知道如何在代码中实现文件路径
你可以这样做:
<?php
$filepath = "[your path]";
$fileContents = file_get_contents("$filepath");
$result = parse_preperties($fileContents);
//Fetch the contents from the result array and add them to the database
function parse_properties($txtProperties) {
...
...
...
}
?>