Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Wieviel Zeilen Quellcode hat mein PHP-Projekt?

Mitglied: Frank

Frank (Level 5) - Jetzt verbinden

21.01.2010, aktualisiert 17.04.2015, 10529 Aufrufe, 3 Kommentare, 1 Danke

Hallo Entwickler,

wer hat sich nicht schon oft gefragt, wieviele Zeilen Quellecode sein eigenes PHP-Projekt eigentlich hat? Ich wollte das für die Administrator-Seite einmal genau wissen und haben nach einem Programm gesucht, dass diese Aufgabe für mich bequem erledigt. Gefunden habe ich das PHP-Tool phploc von Sebastian Bergmann. Das Tool liest die Quellcode-Dateien ein und zählt die Zeilen. Dabei unterscheidet es sogar zwischen Kommentaren und richtigem Code, zählt Interfaces, Klassen, nicht- und statische Methoden und die Funktionen.

Man installiert das Tool phploc über den PEAR-Installer.
pear channel-discover pear.phpunit.de.
pear install phpunit/phploc</code>.
Dabei ist zu beachten, das die PHP Erweiterung "tokenizer" im PHP-Binary vorhanden ist.

Update 17.04.2015: Die Installation über den PEAR-Installer funktioniert nicht mehr!

Stattdessen sollte man folgenden Weg gehen (hier die Installation als root-User):
wget https://phar.phpunit.de/phploc.phar 
chmod +x phploc.phar 
mv phploc.phar /usr/local/bin/phploc
Danach kann man das Tool mit folgendem Befehl aufrufen:
phploc VERZEICHNIS
Als Beispiel habe ich mal: "phploc /var/www/administrator/" aufgerufen (dort liegt mein Quellcode).
# phploc /var/www/administrator/ 
 
Directories:                                         52 
Files:                                              482 
 
Lines of Code (LOC):                              76590 
Comment Lines of Code (CLOC):                     20543 
Non-Comment Lines of Code (NCLOC):                56047 
 
etc..
Die Administrator-Seiten bestehen also aktuell aus 76.590 Zeilen, wovon 56.047 Zeilen Quellcode und 20.543 Zeilen Kommentare sind (habs wohl ganz gut dokumentiert).
Fein

Gruß
Frank
Mitglied: dog
21.01.2010 um 14:49 Uhr
Viel lustiger ist aber noch sloccount, das produziert auch gleich noch absurd hohe Entwicklungskosten

Und wer ganz faul ist benutzt:
01.
wc -l *.php
Bitte warten ..
Mitglied: Frank
21.01.2010 um 15:26 Uhr
Hi,

und noch ein kleines Tool zum Thema von Sebastian Bergmann: phpcpd.
Es findet sehr schnell doppelte Zeilen (z.b. per Copy&Paste eingefügt) im PHP-Quellcode.

Installation:
01.
pear install phpunit/phpcpd
Aufruf:
phpcpd VERZEICHNIS
Gruß
Frank
Bitte warten ..
Mitglied: Frank
17.04.2015, aktualisiert um 15:18 Uhr
Update: Die Installation über den PEAR-Installer funktioniert nicht mehr! Stattdessen sollte man folgenden Weg gehen (hier die Installation als root-User):

wget https://phar.phpunit.de/phploc.phar 
chmod +x phploc.phar 
mv phploc.phar /usr/local/bin/phploc
Danach kann man es einfach per "phploc Verzeichnisname" aufrufen:
# phploc 
phploc 2.1.1 by Sebastian Bergmann. 
 
Usage: 
 phploc [--names="..."] [--names-exclude="..."] [--count-tests] [--git-repository="..."] [--exclude="..."] [--log-c 
sv="..."] [--log-xml="..."] [--progress] [values1] ... [valuesN] 
 
Arguments: 
 values 
 
Options: 
 --names               A comma-separated list of file names to check (default: ["*.php"]) 
 --names-exclude       A comma-separated list of file names to exclude 
 --count-tests         Count PHPUnit test case classes and test methods 
 --git-repository      Collect metrics over the history of a Git repository 
 --exclude             Exclude a directory from code analysis (multiple values allowed) 
 --log-csv             Write result in CSV format to file 
 --log-xml             Write result in XML format to file 
 --progress            Show progress bar 
 --help (-h)           Display this help message 
 --quiet (-q)          Do not output any message 
 --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for 
 debug 
 --version (-V)        Display this application version 
 --ansi                Force ANSI output 
 --no-ansi             Disable ANSI output 
 --no-interaction (-n) Do not ask any interactive question
Alle weiteren Informationen dazu erhaltet ihr auf der Seite von Sebastian Bergmann

Anbei ein Update unserer Codezeilen vom 17.04.2015:

Lines of Code (LOC)                            82101 
Comment Lines of Code (CLOC)                   15375 (18.73%) 
Non-Comment Lines of Code (NCLOC)              66726 (81.27%)
Bitte warten ..
Ähnliche Inhalte
Linux

Reaktion auf die Kritik der Münchner Stadträte zum LiMux Projekt

Information von FrankLinux45 Kommentare

Die Stadträte Sabine Pfeiler und Otto Seidl haben einen Antrag Notebooks und Tablets für den alltäglichen Gebrauch tauglich machen! ...

PHP

PHP RFC: Mcrypt Extension wird ab PHP 7.2 entfernt

Information von FrankPHP

Ein RFC ist grob eine Abstimmung unter den PHP-Entwicklern, um neue, bestehende oder alte Feature hinzuzufügen, zu ändern, oder ...

PHP

PHP 7.2 veröffentlicht

Information von FrankPHP

Das PHP-Team hat heute, den 30.11.207 die aktuelle Version von PHP 7.2 veröffentlicht. Eine der wichtigsten Änderungen für PHP-Entwickler ...

Administrator.de Feedback

Entwicklertagebuch: PHP 7

Information von admtechAdministrator.de Feedback4 Kommentare

Hallo Administrator User, mit dem heutigen Tag haben wir unsere Server komplett auf die PHP Version 7 umgestellt. Wir ...

Neue Wissensbeiträge
SAN, NAS, DAS
QNAP NAS Datenschutz-Loop nach Firmware-Update
Tipp von vanTast vor 7 StundenSAN, NAS, DAS1 Kommentar

Moin, im allgemeinen Trend seine geänderten Datenschutzbedingungen den Kunden zukommen zu lassen kam die Firma QNAP auf die glorreiche ...

Datenschutz
DSGVO Datenschutzgesetz
Anleitung von 1Werner1 vor 8 StundenDatenschutz4 Kommentare

Moin, ja was ist das, da ist die DSGVO Datenschutzverordnung. Wie das Gesetz gibt es schon 2 Jahre? Nun ...

CPU, RAM, Mainboards
Neverending story
Tipp von keine-ahnung vor 1 TagCPU, RAM, Mainboards1 Kommentar

Da kommt man mit dem fixen gar nicht mehr hinterher und die CPU erreichen wieder Rechenleistungen im Bereich des ...

Multimedia & Zubehör
AVM Fritz USB WLAN Sticks schneller einschalten
Tipp von NetzwerkDude vor 3 TagenMultimedia & Zubehör4 Kommentare

Die AVM Fritz WLAN Sticks haben in der Firmware 2 Modis: Einmal als Massenspeicher und einmal als WLAN Netzwerkkarte ...

Heiß diskutierte Inhalte
PHP
Nach Umzug zu 1und1 bekomme ich beim Eintrag in die DB Tabelle folgenden Fehler
gelöst Frage von jensgebkenPHP35 Kommentare

INSERT command denied to user 'dbo45342345342231244'@'112.127.102.073' for table 'orders'

LAN, WAN, Wireless
Powerline über zwei Stockwerke optimieren
gelöst Frage von DultusLAN, WAN, Wireless33 Kommentare

Guten Morgen liebes Forum, ich hätte einmal eine Frage bezüglich Powerline Adapter: Mein Problem ist seit gestern präsent, da ...

Windows Userverwaltung
Problem mit Benutzerprofil
Frage von lieferscheinWindows Userverwaltung24 Kommentare

Guten Tag liebe Community, folgendes Problem habe ich: User meldet sich auf Client A an - sein Homelaufwerk verbindet. ...

Off Topic
DISKUSSION: Was bringt der Disclaimer "Wenn Sie nicht der Empfänger sind."
Frage von N8DragonOff Topic21 Kommentare

So oder ähnlich, lese ich immer wieder Kleingedrucktes am Ende diverser Mails. Letzten Endes wollen sie mir alle sagen, ...