Brukerverktøy

Nettstedverktøy


perl
For sysadm, praktisk orgientert, ikke teoretisk pent. 80-tallet. Ingen
innebygde lengdegrenser.

En streng = en skalar: $

Hashbang, #! /usr/bin/perl

Bruk alltid:
    use strict;
    use warnings;

my $foo = "hello world";
Singelquotes tolker ikke escapes. 
Støtter interpelasjon. "Hello $word!
my $baz = 3;
my $quux = "3";
. er stringconcatigernig.

print 
print "Hello world!\n";

@

Ting er en liste/array. Sekvenser av skalarer. 

my @bar = (3, 4, 5);
my @foo = @bar[1,2];

my (@foo, $bar) = @list // gir 3 og 4.
my (@foo, undef, $bar) = @list // gir 3 og 5

Dereferering: print $bar[1]

Lister i lister flater ut liseter.

--- perldoc -f join (gir info om join)

% Hashes, assosiative arrays

%hash = (
 foo => 3;
 "bar", 4,
);

print @hash{'foo'}, "\n";
print @hash{'iwd'}, "\n"; // gir undef

if(exists($hash

<> filhåndtering

open my $fh, "<test.txt"
    or die "test.txt: $!"; // tekslige feilmeldinger fra forrige funksjon

«perldoc perlvar» sier masse om variablene

while (<$fh>) {
 print $_; 
}

while (<STDIN>) {
    print $_; 
}

<> er magisk og tar fra stdin eller fil hvis gitt på argument

close $fh

sub fuksjon {
    my ($en, @to) = @_;
    print "Fisk";
    print $to; // liste
}

// if (!defined($fire)) for å sjekke undef.

my @q = map { $_ + 1 } (@v);

funksjon(2,3,4,5,6);

=~ # regex

my $text = "Hei, jeg heter torvald";

if($text =~ /([A-Z][a-z])+/) {
    print "Ja";
    # paranteser samler matchene og legger med flere paranters i $1, $2 osv
}

if (/([A-Z]
    [a-z]
    )+/x) {



:: moduler

use HTML::Entities;

my $text = "X<Y";
encode_entities($text);

perldoc HTML::Entities

(se CPAN)


$$ referanser/pekere

my $ref = \$text

print $$ref;

referasner alltid skalerar.

lister i lister må være referasner [ 1, 2, 3, [4, 5] ]


= () =  mye morsomme operatorerer.

-T (perlagrument) legger i hashbang, gjør taiting. Slå sammen sikker og usikker data. Brukere data blir flagget,



WEBSIDE

user strict; 
use warning;
use CGI;

my $cgi = CGI->new;
print CGI->header(-type=>'text/plain; charset=utf-8,
        -expires=>'+5m');


for my $p ($cgi->param) {
        print "Parameter du ga ut: $p"
}


break og contiune heter i perl break og last.|

last unless ($i = fisk);
perl.txt · Sist endret: 2017-11-07 20:32 (ekstern redigering)