Schrift
[thread]5411[/thread]

Modul Archive::Zip , aber kein *.zip !!!: Please help... (Seite 2)

Leser: 1


<< |< 1 2 >| >> 17 Einträge, 2 Seiten
Rambo
 2004-03-25 14:52
#48698 #48698
User since
2003-08-14
803 Artikel
BenutzerIn

user image
use strict ist standart so weit ich weis!
ich meinte das du in z.B.
Code: (dl )
print "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Test 5 zum erzeugen von Zip-Files $filename!\n";

$filename kompl. klein hast
dann
Code: (dl )
1
2
3
4
foreach my $filename (@names) {
if ($filename =~ /.LOG/) {
$zip->addFile($fileName);
}

2x auch klein aber beim 3. mal $fileName (großes N) geschrieben hast.
das war was ich meinte :-)

funktioniert den das script von mir mit use strict bei dir?
oder must du es hier auch raus nehmen?

hatte hier eigentlich noch keine problem es sei denn man
arbeitet mit viel subs. aber das geht auch wie
Strat mir schon bewiesen hat

fürti
Gast Gast
 2004-03-25 15:01
#48699 #48699
Ach ja, jetzt versteh ich... is auch klar, hatte das nur übersehen *schäm*

Wenn ich genau den geposteten code (13:16 uhr) mit
use strict; verwende gibts den Serverfehler.
Wundert mich auch das in meinem Perl editor das so steht:

use strict;
use warnings;
use Archive::Zip;

Also strict auch fett gedruckt...
Man merkt das ich ein totaler Anfänger bin!
Gast Gast
 2004-03-25 15:03
#48700 #48700
Hab jetzt nachgeschaut..

Im Ordner c:\Perl\lib ist kein Ordner Strict .... nur der Ordner
Warnings.
Muss also das Modul wohl nachinstallieren.
Rambo
 2004-03-25 15:07
#48701 #48701
User since
2003-08-14
803 Artikel
BenutzerIn

user image
ordner strict gibt es auch nicht nur die datei strict.pm
im l\Perl.580\lib\strict.pm verzeichnis.

wenn du die datei nicht hast mach dir diese einfach :-)
das ist der inhalt :-)
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
package strict;

=head1 NAME

strict - Perl pragma to restrict unsafe constructs

=head1 SYNOPSIS

use strict;

use strict "vars";
use strict "refs";
use strict "subs";

use strict;
no strict "vars";

=head1 DESCRIPTION

If no import list is supplied, all possible restrictions are assumed.
(This is the safest mode to operate in, but is sometimes too strict for
casual programming.) Currently, there are three possible things to be
strict about: "subs", "vars", and "refs".

=over 6

=item C<strict refs>

This generates a runtime error if you
use symbolic references (see L<perlref>).

use strict 'refs';
$ref = \$foo;
print $$ref; # ok
$ref = "foo";
print $$ref; # runtime error; normally ok
$file = "STDOUT";
print $file "Hi!"; # error; note: no comma after $file

There is one exception to this rule:

$bar = \&{'foo'};
&$bar;

is allowed so that C<goto &$AUTOLOAD> would not break under stricture.


=item C<strict vars>

This generates a compile-time error if you access a variable that wasn't
declared via "our" or C<use vars>,
localized via C<my()>, or wasn't fully qualified. Because this is to avoid
variable suicide problems and subtle dynamic scoping issues, a merely
local() variable isn't good enough. See L<perlfunc/my> and
L<perlfunc/local>.

use strict 'vars';
$X::foo = 1; # ok, fully qualified
my $foo = 10; # ok, my() var
local $foo = 9; # blows up

package Cinna;
our $bar; # Declares $bar in current package
$bar = 'HgS'; # ok, global declared via pragma

The local() generated a compile-time error because you just touched a global
name without fully qualifying it.

Because of their special use by sort(), the variables $a and $b are
exempted from this check.

=item C<strict subs>

This disables the poetry optimization, generating a compile-time error if
you try to use a bareword identifier that's not a subroutine, unless it
appears in curly braces or on the left hand side of the "=E<gt>" symbol.


use strict 'subs';
$SIG{PIPE} = Plumber; # blows up
$SIG{PIPE} = "Plumber"; # just fine: bareword in curlies always ok
$SIG{PIPE} = \&Plumber; # preferred form



=back

See L<perlmodlib/Pragmatic Modules>.


=cut

$strict::VERSION = "1.02";

my %bitmask = (
refs => 0x00000002,
subs => 0x00000200,
vars => 0x00000400
);

sub bits {
my $bits = 0;
foreach my $s (@_){ $bits |= $bitmask{$s} || 0; };
$bits;
}

sub import {
shift;
$^H |= bits(@_ ? @_ : qw(refs subs vars));
}

sub unimport {
shift;
$^H &= ~ bits(@_ ? @_ : qw(refs subs vars));
}

1;


fürti
Gast Gast
 2004-03-25 15:34
#48702 #48702
Aha, ja die Datei liegt auch da wo sie sein soll!!
Werd aber trotzdem mal deinen Code testen.
Danke vielmals, hast mir seeeehhhr geholfen!!!!!
Rambo
 2004-03-25 15:44
#48703 #48703
User since
2003-08-14
803 Artikel
BenutzerIn

user image
ne ne das was ich zu letzt gepostet habe ist der inhalt
von strict.pm
wenn du die datei hast dann sollte es eigentlich gehen :-)

gern geschehen
viel spass noch :-)
Gast Gast
 2004-03-25 16:27
#48704 #48704
ja, meinte ich ja.
Hab nur gedacht dass ich deinen Inhalt verwende auch wenn sie wahrscheinl. identisch sind.

Grüsse
crucho
<< |< 1 2 >| >> 17 Einträge, 2 Seiten



View all threads created 2004-03-25 11:38.