PHP语句始终返回false

ilo*_*ilo 2 php imdb

我有一个小脚本,女巫使用omdbapi从IMDB中获取数据。我设法从站点获取数据,但是当我尝试检查电影海报是否有效时,它总是返回false。

            if(!$info['Poster'] == "N/A") {
                $url = $info['Poster'];
                $img = 'images/'.$info["imdbID"].'.jpg';
                file_put_contents($img, file_get_contents($url));
                echo 'Downloaded';
            } else {
                echo '!Downloaded';
                $noCover = true;
            }
Run Code Online (Sandbox Code Playgroud)

$ info ['Poster']包含与此类似的数据:http : //ia.media-imdb.com/images/M/MV5BMTM0MDgwNjMyMl5BMl5BanBnXkFtZTcwNTg3NzAzMw@@._V1_SX300.jpg

它工作了一段时间,但是以某种方式停止了...

Joh*_*nde 5

您的if语句写得不正确。!$info['Poster']意味着if $info['Poster'] is not true。如果有一个值,它将被转换false为PHP的类型杂耍将任何非空字符串转换为true!操作员将该值设为false。false不等于N/A类型杂耍将其转换为true(非空字符串始终为true)。false不等于`true。

你的意思是使用!=该装置not equal to

if($info['Poster'] != "N/A") {
Run Code Online (Sandbox Code Playgroud)

  • 你曾经有过这样的经历吗?`if(!($ info ['Poster'] ==“ N / A”)){`,因为那样也可以。 (2认同)