• Opret dig
  • Glemt adgangskode

User account menu

  • Artikler
  • Forside
  • Forum
  • Nyheder
  • Log ind
Hjem
LinuxIN.dk

Snak med

Opret dig!

Af m_abs | 13.02.2012 13:44

Lint værktøj til PHP

Programmering
JavaScript har vi jslint til at tjekke ens kode for de værste tåbeligheder.
Findes der noget lignende til PHP?

Jeg mener ikke "php -l", da den kun tjekker syntaksen af den ene fil men ikke for om man fx. bruger uinitialiserede variabler eller for et hav af andre ting som PHP tillader, men som er/kan være en virkelig dårlig ide.
  • Log ind eller opret dig for at tilføje kommentarer

Kommentarer6

# 1

13 år 10 måneder siden

Permalink

Indsendt af burgermann den 13. februar 2012 kl. 13:56

Permalink

Hvad skal du dog med det?!

Hvad skal du dog med det?! :P PHP er sproget, hvor alle slags tåbeligheder er tilladt.

Jeg har ikke hørt om sådan et værktøj. Jeg bruger netbeans, som kan tjekke syntaksfejl on the fly, samt i mindre grad kan checke uhensigtsmæssig kode.
  • Log ind eller opret dig for at tilføje kommentarer

# 2

13 år 10 måneder siden

Permalink

Indsendt af marx den 13. februar 2012 kl. 14:18

Permalink

Uinitialiserede variabler

Uinitialiserede variabler giver en NOTICE hvis du har din error reporting skruet helt op. Hvilket jeg iøvrigt anbefaler når du udvikler. Der er ikke noget grimmere end at sætte et projekt i søen fyldt med warnings og notices. Then again, Typo3 har af uransagelige årsager overlevet det i mange år...

Umiddelbart vil jeg tro dit bedste bud er enten at bruge et IDE med et PHP-plugin der kan give dig begrænset kodetjek -- eller simpelthen skrive din egen.
  • Log ind eller opret dig for at tilføje kommentarer

# 3

13 år 10 måneder siden

Permalink

Indsendt af m_abs den 13. februar 2012 kl. 15:49

Permalink

Hvad skal du dog med

#1: Hvad skal du dog med det?! :P PHP er sproget, hvor alle slags tåbeligheder er tilladt.
Endnu mere end JavaScript, ja. Men JavaScript har et glimrende værktøj til at holde de værste af den slags væk.

#2
Kender godt til den warning, jeg vil bare kunne tjekke det uden at afvikle scriptet og det er langt fra den eneste fejl som man burde tjekke for. Der er også "skønheder" som variables variable fx.:

$varName = "^hhjgds£½436@";
$$varName = "Hugo";


Hvis man havde et script som jslint bare til PHP, så kunne man have det som commit-hook og nægte dårlig kode i ens repository.
  • Log ind eller opret dig for at tilføje kommentarer

# 4

13 år 10 måneder siden

Permalink

Indsendt af marlar den 13. februar 2012 kl. 17:05

Permalink

Jeg bruger Komodo IDE

#3:

Jeg bruger Komodo IDE som er fint til at syntaxtjekke php. Det findes også i en gratisversion, Komodo Edit. Der findes endda Open Komodo, men jeg har ikke kigget efter hvad det dækker over.

Mht. dit sidste eksempel er det jo fuldt tilladt og i sjældne tilfælde nyttigt.

$varName = "test";
$$varName = "Hugo";
echo $test; // Hugo


Jeg ved ikke om php kan fange dette da jo er tillladt.
  • Log ind eller opret dig for at tilføje kommentarer

# 5

13 år 10 måneder siden

Permalink

Indsendt af m_abs den 13. februar 2012 kl. 18:07

Permalink

Mht. dit sidste eksempel

#4: Mht. dit sidste eksempel er det jo fuldt tilladt og i sjældne tilfælde nyttigt.
Præcis, det er tilladt og det er helt utrolig dårlig kode at bruge det feature.
Jeg kan virkelig ikke komme på et eksempel, hvor det er en god ide at bruge det.

Hvis man vil have en global variable med sådan et navn, så brug $GLOBALS, hvis man vil have en get, post, cookie variable, så brug $_GET, $_POST, $_COOKIE eller $_REQUEST. (Og i øvrigt slår register_globals fra).
  • Log ind eller opret dig for at tilføje kommentarer

# 6

13 år 10 måneder siden

Permalink

Indsendt af m_abs den 19. februar 2012 kl. 23:51

Permalink

Jeg fandt en tråd på

Jeg fandt en tråd på stackoverflow om netop dette emne, jeg har endnu ikke selv undersøgt værktøjerne der foreslås.

http://stackoverflow.com/questions/3601031/is-there-a-good-robust-php-l…
  • Log ind eller opret dig for at tilføje kommentarer

Svar søges

KDE overgår indsamlingsmålet for 2025 med rekordstor støtte fra lokalsamfundet 0
Zypper Package Manager brugervejledning til openSUSE brugere og deres derivater 0
KDE Spectacle tilføjer OCR understøttelse for at kopiere tekst direkte fra skærmbilleder 0
Deaktiverer alle AI-funktioner i Firefox Web Browser 0
Gratis solenergi, skrivebord og valg 0

Seneste aktivitet

Driver til min scanner? 1
Affinity V3 2
copy hvordan 1
Sortering af filer - sort of... 4
Det der ikke må galt gik galt 5
VPN — 8 tests, 1 klar vinder i 2025 3
Lidt nostalgi 1
Forum. 1
BigLinux 1
Mount btrfs-device fra ext4 8
Skal vi være nervøse? 22
How to upgrade to LMDE 7 6
Kontakt til dansk-gruppen 3
Internettet er ved at dø. Vi kan stadig stoppe det 1
Nørder søger nørder: Første Linux-brugergruppe på Mors 3
Østrigsk ministerium smider Microsoft ud til fordel for Nextcloud 1
Brug carburetor til at forblive usynlig online 8
Sådan konfigurerer du flatpaks' flathub til verified only 9
Plasma tapet-skifter 3
Virksomheder og enheder der kører på Linux 11

© 2025 Linuxin og de respektive skribenter

Oprettet og drevet af nørder siden 2004 !