Gå til innhold

PHP-scriptet viser "?" istedet for "-"


Anbefalte innlegg

...Noen som vet hvordan jeg kan endre på dette?

 

Her er php-koden:

<?
// lastfm.recent.php by alexander <http://www.astoever.no>
// the cache code was stolen from an old audioscrobbler script whose author eludes me (mail for cred).

// settings
$lastfmUsername = "andersbjorshol";
$lastfmCache = "lastfm.recent.cache";
$secondsBeforeUpdate = 15; // be nice to their link
$numberOfSongs = 5; // 10 is max
$socketTimeout = 3; // seconds to wait for response from audioscrobbler
$emptyCache = "Cache is empty.";
$wrapperStart = "<div class='lastfm'>";
$wrapperEnd = "</div>";

// grab the stuff
if(!file_exists($lastfmCache)) touch($lastfmCache);
$lastModified = filemtime($lastfmCache);
if(time() - $lastModified > $secondsBeforeUpdate) {
 @ini_set("default_socket_timeout", $socketTimeout);
 $recentlyPlayedSongs = @file_get_contents("http://ws.audioscrobbler.com/1.0/user/$lastfmUsername/recenttracks.txt");
 if(strlen($recentlyPlayedSongs) == 1) {
touch($lastfmCache);
 }
 else {
$handle = fopen($lastfmCache, "w");
fwrite($handle, $recentlyPlayedSongs);
fclose($handle);
 }
}
// post the info
$cacheSize = filesize($lastfmCache);
if($cacheSize < 5) echo $emptyCache;
else {
 $recentlyPlayedSongs = file_get_contents($lastfmCache);
 $recentlyPlayedSongs = utf8_decode($recentlyPlayedSongs); // UTF8 h8
 echo $wrapperStart;
 $track = explode("\n", $recentlyPlayedSongs);
 for ($i = 0; $i < $numberOfSongs; $i++) {
$trackArray = explode(",", $track[$i]);
echo "<p class='lastfm'>".$trackArray[1]."</p>";
}
 echo $wrapperEnd;
}

 

 

Her er link til nettsiden: link

Lenke til kommentar
Videoannonse
Annonse
Kan være en god idé uansett hva problemet egentlig er å bruke fulle start-tegn for php (<?php) og styre langt unna short-tags (<?), forresten. :)

hvorfor styre langt unna short tags? bortsett fra at det må enables i php.ini

 

Short tags reduserer portabiliteten, da (som du sier) det må slås på i php.ini, og da det er ingen praktisk nytteverdi i å bruke short-tags ser jeg ikke hvorfor man skal bruke det i det hele tatt. :)

 

Du risker at php.ini-innstillingene endrer seg når webhost oppgraderer php, eller at du må kjøre en massiv search&replace på koden din om du bytter webhost en gang. For ikke å snakke om at du får trøbbel med XHTML.. :/

Lenke til kommentar

Og ikke minst at det fjernes fra PHP6 (dette har jeg ingen kilder på, mener bare å ha lest det i 'Pub'en).

 

PHP.net fraråder også folk å bruke ASP-tag, samt short-tag.

http://www.php.net/manual/en/language.basic-syntax.php

Note: Using short tags should be avoided when developing applications or libraries that are meant for redistribution, or deployment on PHP servers which are not under your control, because short tags may not be supported on the target server. For portable, redistributable code, be sure not to use short tags.

Gudene må vite hvorfor de fant ut at det ville være lurt med ASP-tags....

Lenke til kommentar
Hvilket er den største grunne til at short_tags (bør) fjernes i PHP6.

 

Og seriøst, hvor mye tid sparer du på å skrive <? kontra <?php ? Kanskje man bør vurdere å lære seg "touch" om man syns man sparer mye på det.

 

nå var du bra seriøs ja.

det har ikke noe med tid å gjøre.

det er bare en enklere tekst.

Endret av thor918
Lenke til kommentar
Joda, sikkert myyyyye enkelere.

Personlig så synes jeg bruken av short_tags gir et elendig førsteinntrykk på hvordan resten av scriptet kan se ut.

jeg skrev teksten var enklere. det vil si kortere.

om jeg eller du synes det er enklere å bruke det ene eller det andre er likegyldig.

saken er at noen bruker den og andre ikke.

 

det har kommet mange gode argumenter for å bruke long-tags.

la det være med det.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...