我有以下代码:为什么Perl用“1”代替我的字符串?
#$domain = domainname.co.uk
#$root = public_html
#$webpage = domainname.co.uk/foo/bar/foobar.html
my $string = ($webpage =~ s/^$domain//g);
my $linkFromRoot = $dbh->quote($root . $string);
Usualy这个工作正常,但由于某种原因,输出为“的public_html 1”而不是“的public_html /富/酒吧/ foobar.html”。
任何人都可以看到为什么?
当您遇到这些问题时,请开始平分您的代码以查找问题数据显示的位置。在这种情况下,在使用它之前检查'$ string'的值,发现它是'1',然后在替换运算符上进行读取以查看它在做什么。 :) – 2010-02-06 11:41:59
题外话,但为什么DBI'报价'而不是占位符? :) – hobbs 2010-02-06 11:47:59