1 wrz 2008

Odczyt pogody z xml

<?xml version="1.0" encoding="UTF-8"?>
<root>
  <prognoza>
    <id>Egipt</id>
      <temp>
        <w>  7.0</w>
        <w>  8.0</w>
      < w>  9.0</>
    </temp>
  </prognoza>
</root>
$root = simplexml_load_file('test.xml');
$wt = $root->prognoza->temp->w;
print_r($wt); echo '<br>';

foreach($wt as $w){
    echo 'temp:' .$w. '<br/>';
}

Wynik:
SimpleXMLElement Object ( [0] => 7.0 )
temp: 7.0
temp: 8.0
temp: 9.0

1 wrz 2008

Wczytanie pliku do tablicy

sub load_file_to_table {
    my ( $plik, $tab_format) = @_;

    open(PLIK, $plik);
    while ($line = <PLIK>) {
        chomp $line;</p>

        if($tab_format==1) {
            my ($region, $gmina, $kierunkowy) = split(/\t/, $line);
            $tablica{$region."-".$gmina} = $kierunkowy;
        }
        elsif($tab_format==2) {
            my ($wojew, $miejsc, $gmina, $kierunkowy, $pna) = split(/\t/, $line);
            $tablica{$wojew."-".$gmina}{$miejsc}{'nr_kier'} = $kierunkowy;
            $tablica{$wojew."-".$gmina}{$miejsc}{'pna'}  = $pna;
            $tablica{$wojew."-"}{$miejsc}{'nr_kier'}  = $kierunkowy;
            $tablica{$wojew."-"}{$miejsc}{'pna'}   = $pna;
        }
        elsif($tab_format==3) {
            my ($miejsc, $ulica, $kierunkowy, $pna) = split(/\t/, $line);
            $tablica{$miejsc}{$ulica}{'nr_kier'} = $kierunkowy;
            $tablica{$miejsc}{$ulica}{'pna'}  = $pna;
        }

        elsif($tab_format==4) {
            my $nr_kier = $line;
               $nr_kier =~ s/\-/ /g;
            $tablica{$nr_kier} = $nr_kier;
        }
    }

    close(PLIK);
    return %tablica;
}
%region_gmina_nr_kierunkowe   = &load_file_to_table ( $PATH_DATA . 'gmnkier.txt', 1);
1 wrz 2008

Konwersja ISO ANSI

sub ISO_ANSI {
# Conversion of polish characters: ISO Latin2 (8859-2) -&gt; ANSI (Win-1250)
my ( $tekst ) = @_;
  $tekst =~ tr/ˇĆĘŁŃÓ¦¬Ż±ćęłń󶼿/ĄĆĘŁŃÓŚŹŻąćęłńóśźż/;
  return $tekst;
}
$linia = &amp;ISO_ANSI($linia);

Finkcja do konwersja ISO ANSI