我已經寫了代碼來獲得一個網站的網址,然後搜索字符串,然後該字符串(實際是序號)的硬編碼數比較Perl代碼舉止怪異
#!/usr/bin/perl
use LWP::Simple;
my $oldversion =36;
$pageURL="http://www.google.com/isos/preFCS5.3/LATESTGOODCVP/";
my $simplePage=get($pageURL);
my $newPage = "$simplePage";
my $str = (split("href=\"CVP-LATEST-5.3.0.",$newPage))[1];
my $version = substr("$str",0,2);
print $version; // HERE IT PRINT 37 WHICH IS CORRECT
if($version =! $oldVersion)
{
print $version; // BUT HERE IT PRINTS 1 WHICH IS WRONG. HOW IS IT CHANGING ?
##-- fetch the zip and save it as perlhowto.zip
my $status = getstore("http://www.google.com/isos/preFCS5.3/LATESTGOODCVP/CVP-LATEST-5.3.0.$version.iso", "CVP-LATEST-5.3.0.$version.iso");
}
else
{
print("Currently new version\n");
}
爲什麼改變價值 ?它無法下載該文件,因爲這一點。
這是從你的實際代碼剪切和粘貼?一個變量似乎將名稱從$ oldversion更改爲$ oldVersion。而你似乎使用了錯誤的評論類型。爲什麼你不使用「嚴格使用」和「使用警告」?如果您可能不太願意發佈實際編譯的代碼,那麼它會更容易。 –
加上'use strict;使用警告;'到腳本的頂部,修復錯誤和警告,然後發佈新代碼。 – TLP
[總是。使用。嚴格。和。總是。使用。警告。](http://joelslinux.blogspot.com/2011/06/use-strict-and-warnings.html) –