我在php中使用元数据阅读器。它工作得很好,但是当我用它来输入来自INPUT中的函数的值时,我在输入框中得到了奇怪的符号。
以下是源代码:
if($fileStatus == 1){
include ("include/functions.php");
$filename=$uploaded;
$mp3file=new CMP3File;
$mp3file->getid3($filename);
$hej = "hejhejhej";
?>
<form>
<input type="text" name="hej" value="<?php echo $hej;?>">
<input type="text" name="title" value="<?php echo "$mp3file->title";?>"><br>
<input type="text" name="artist" value="<?php echo "$mp3file->artist";?>"><br>
<input type="text" name="album" value="<?php echo "$mp3file->album";?>"><br>
<input type="text" name="year" value="<?php echo "$mp3file->year";?>"><br>
<textarea name="artist"><?php echo "$mp3file->comment";?></textarea><br>
<input type="text" name="genre" value="<?php echo "Ord($mp3file->genre)";?>"><br>
</form>
<?php
}
我从浏览器获得的源代码:
<form>
<input type="text" name="hej" value="hejhejhej">
<input type="text" name="title" value="Selene
答案 0 :(得分:0)
这可能是因为UTF-8并且浏览器不支持该编码。可能是,PHP的htmlentities
可能对你有所帮助。替换:
<?php echo $hej;?>
使用:
<?php echo htmlentities($hej);?>
答案 1 :(得分:0)
您看到的奇怪字符是因为CMP3File使用fread从实际的MP3文件中获取字节(如果您想了解更多信息,请阅读ID3标签)。如果要将实际字节看作字符串,请使用ord函数:
<?php
for($i = 0; $i < strlen($mp3file->title); $i++) {
echo ord($mp3file->title[$i]);
}
?>
答案 2 :(得分:0)
此问题的解决方案是“Trim()”