简体   繁体   English

PHP字符串比较不适用于图像元数据

[英]php string comparison not working for image metadata

I am extracting image metadata using php. 我正在使用php提取图像元数据。 The logic of my below code is that if the user uploads the default file with metadata(UserComment)=ASCIIsd11, he/she will get an error. 我下面的代码的逻辑是,如果用户上载具有metadata(UserComment)= ASCIIsd11的默认文件,他/她将得到一个错误。

<?php
$exif_s = exif_read_data('e42889ed00.jpg');
$phtchk = $exif_s["UserComment"];
print $phtchk;
print strcmp($phtchk, "ASCIIsd11");
if(strcmp($phtchk, "ASCIIsd11") == 0){ echo "You have not uploaded your own photo"; exit;} 
else
{
echo"You have uploaded it.";
}
?>

print $phtchk; returns ASCIIsd11 返回ASCIIsd11

print strcmp($phtchk, "ASCIIsd11"); returns -1 返回-1

and the last echo statement "You have uploaded it" is printed. 最后一个回显语句"You have uploaded it" Actually I am expecting strcmp() to return 0 . 实际上,我期望strcmp()返回0 Kindly help. 请帮助。

Do var_dump(phtchk); var_dump(phtchk); instead of print $phtchk; 而不是print $phtchk; Perhaps you don't see some extra-chars (eg: \\n ). 也许您看不到一些多余的字符(例如: \\n )。

If it concerns the collation, you should see: UTF-8 characters not displaying properly from JPEG IPTC data in PHP 如果涉及排序规则,您应该看到: PHP中的JPEG IPTC数据无法正确显示UTF-8字符

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM