PHP Tutorial | Einführung in Composer

Sdílet
Vložit
  • čas přidán 5. 09. 2024
  • Im heutigen Video erzähle ich die Geschichte hinter Composer, erläutere die wichtigsten Befehle sowie grundlegende Konfigurationsparameter.
    Schau dir außerdem mein Logger Video an • PHP Logging Tutorial |...
    Geheimer Link: bit.ly/2mofMJT
    Meine Musik Playlist zum programmieren: • NIGHTLAPSE - A Chill S...
    ** Links zum Video **
    Composer Download: getcomposer.or...
    Composer Befehle: getcomposer.or...
    Composer Konfigurationen: getcomposer.or...
    Weitere Themenvorschläge und/oder Kooperationen in die Kommentare.
    #PHP #Composer #Libraries
    ** Keywords **
    Vitalij Mik, PHP, PHP Tutorials, PHP Tipps,PHP Deutsch,PHP Lernen, Webentwicklung, Softewareentwicklung, Webdeveloper, PHP Developer, Composer, PHP Libraries, PECL, PEAR, Geschichte vom Composer, PHP Pakete Installieren
  • Věda a technologie

Komentáře • 60

  • @VitalijMik
    @VitalijMik  Před 4 lety

    Hast du Pakete auf Packagist eingereicht?
    Schau dir als nächstes Template Tutorial an :czcams.com/video/Hx83NJDzbj4/video.html

  • @Mobynet
    @Mobynet Před 4 měsíci +1

    Vielen Dank sehr gutes Video hat mir sehr geholfen, sehr informativ danke dir

  • @marcwampfler2203
    @marcwampfler2203 Před 2 lety +1

    Hey super verständlich erklärt, vielen lieben Dank!

    • @VitalijMik
      @VitalijMik  Před 2 lety

      Dankeschön fürs Zuschauen und Kommentieren, hilft mir sehr

  • @Lyrik-Klinge
    @Lyrik-Klinge Před rokem +1

    Super erklärt, DANKE!

    • @VitalijMik
      @VitalijMik  Před rokem +1

      Dankeschön, ist aber auch super alt. Ich müsste mal eine neue Folge drehen

    • @Lyrik-Klinge
      @Lyrik-Klinge Před rokem +1

      @@VitalijMik 🙂Trotzdem gut!

  • @infosandfacts7536
    @infosandfacts7536 Před 4 lety +3

    Hi. Gute Inhalte. Aber: Du musst dringend ein CZcams Mini Aufnahme Studio bauen. Vernünftiges Licht, Ton und Vernünftigen Hintergrund. Dazu gibts sogar Tutorials :).

    • @VitalijMik
      @VitalijMik  Před 4 lety +1

      Ja ich habe mir schon Tutorials angesehen und die neueren Videos sind schon besser;) Danke für den Hinweis

    • @marcwampfler2203
      @marcwampfler2203 Před 2 lety

      Nö, ändert nichts am tollen Inhalt.
      Nach dem Motto: Nicht schön, aber gut!

  • @alwaha4283
    @alwaha4283 Před 2 lety +3

    gutes Video, wäre besser wenn du Stichworte in Screen einblendest. -:)

    • @VitalijMik
      @VitalijMik  Před 2 lety +1

      Dankeschön. Wenn ich irgendwann eine moderne Version vom Video mache, dann werde ich die einblenden. Das war einer meiner ersten Videos

  • @pinkeHelga
    @pinkeHelga Před rokem +1

    Was hältst Du von einem Composer-Tutorial Teil 2?
    Da könntest Du detailliert auf die ganzen Einstellungen in der JSON eingehen, eigene Projektstrukturen managen usw.
    Geht es z.B. auch, daß man Entwicklungs- und Produktiv-Pakete gleichzeitig in getrennten Ordnern installiert?
    Lassen sich Tasks managen wie bei diversen Buildsystemen?
    ...und was sonst noch alles geht.

    • @VitalijMik
      @VitalijMik  Před rokem +1

      Ist schon in Arbeit, allerdings zu der frage, nein, du kannst nur ein Ordner für Vendoren auswählen aber nicht getrennt.
      Composer ist kein Build system, aber es gibt post update und pre update events wo man noch scripte ausfühern kann.
      das alles will ich im Video dann erklären

    • @pinkeHelga
      @pinkeHelga Před rokem +1

      @@VitalijMik Cool, darauf freu' ich mich schon. :)

  • @cemfirat_com
    @cemfirat_com Před 2 lety +1

    Hallo, möchte eine einfache Website erstellen und hierzu php composer benützten. Wird der ganze Projektordner (inkl. composer.json usw.) in den Public public_html, htdoc... hochgeladen? Beim webpack wird alles in das dis, public,... kompiliert.... Einen Beitrag zb. Eine Website erstellen und composer nutzen, dann website online gehen - das wäre gut. ODER, verstehe ich composer in der Anwendung falsch????

    • @VitalijMik
      @VitalijMik  Před 2 lety +1

      hi also composer.json ist das gleiche wie package.json und vendor ordner der erstelle wird ist das gleiche wie node_modules also nein es ist nicht das selbe wie webpack.
      Composer wird in der regel eine ebene höher hochgeladen als document root weil oft im vendor ordner auch PHP Dateien liegen die man nicht von außen erreichen darf. im public liegt dann nur eine index.php die dann ../vendor/autoload.php included

    • @cemfirat_com
      @cemfirat_com Před 2 lety

      @@VitalijMik Danke für die schnelle Antwort.
      Was wäre dann besser?:
      public_html/
      ../web (domainroot)/index.php
      ../vendor/autoload.php
      ../src/
      ../composer.lock
      ../composer.json
      ../usw.
      oder:
      domain/
      ../.temp/
      ../vmail/
      ../www_logs/
      ../.phpversion
      ../.profile
      ../public_html/index.php
      ../../src/classes/
      ../vendor/autoload.php
      ../composer.lock
      ../composer.json
      ../usw.
      mir fehlen all bei diesen Tutorials diese Grunddinge...
      und werden auch composer.json und co hochgeladen?
      Ein Video über die ansehensweise, praktische Beispiele wäre fein.

    • @VitalijMik
      @VitalijMik  Před 2 lety

      also ich habe hier in vereinfachter Form ein projekt
      github.com/BlackScorp/funci
      public ordner ist document root.
      hier würde man also lokal composer packages isntallieren dann würde der vendor ordner dazu kommen und man würde alles so hochladen wie es da ist. nur bei dem Webhoster eben die domain umstellen auf public ordner. So adss wenn man die DOmain aufruft, man NUR den Inhalt aus dem Public ordner sieht. Da ist nicht viel, nur die CSS/JS dateien + bilder und eine index.php mehr darf die Außewelt nicht sehen.
      Oder hier ein weiteres Beispiel mit dem SlimPHP Framework
      github.com/BlackScorp/framework-examples/tree/main/slim
      wieder das gleiche. public ordner mit wenigen dateien und alles andere ist ein Ordner höher und alles muss hochgeladen werden.
      Normalerweise ist es eh so dass man nur composer.json und composer.lock hochlädt und sich dann über die kommeandozeile auf dem server einloggt und auf dem server direkt "composer install --no-dev" ausführt. das geht aber bei einfachen webhostern nicht nur da wo man ssh zugriff auf dem server hat

  • @Chrigodth
    @Chrigodth Před 4 lety +2

    Als Einführung ganz gut und hilfreich. Schade das die Windows Exe nicht behandelt wird und das du zwar schön erzählst, aber nicht viel zeigst.

    • @VitalijMik
      @VitalijMik  Před 4 lety

      Ich nutze die composer Windows Exe halt nicht, deswegen kann ich dazu nicht viel sagen. ich lade einfach immer die composer.phar herunter und arbeite mit php.exe weiter. Sorry

    • @Chrigodth
      @Chrigodth Před 4 lety

      @@VitalijMik ist übrigens nicht stark anders als die manuelle Installation. Ich kann composer ohne pfadangabe updates machen lassen usw. Ich stehe da leider noch ganz am Anfang, aber nicht in das Installations Verzeichnis zu müssen klingt doch schon mal ganz komfortabel.

    • @VitalijMik
      @VitalijMik  Před 4 lety

      @@Chrigodth DIe phar Datei liegt ja bei mir immer einem Projekt, Wenn ich Composer updaten will, mache ich das für das eine Projekt.
      Viele Tutorials zeigen einem die Kommandobefehle wie man diese Einsetzt, man muss dann immer bei dem Tutorial umdenken wenn man die exe benutzt. Es ist sowieso üblich in der Webentiwcklung vieles auf der Kommandozeile zu erledigen.

  • @VJKaiC
    @VJKaiC Před 9 měsíci

    Hallo, Danke für das Tutorial ... bisschen wirr.
    Bei meinen Shared-Hosting-Webspace habe ich auf dem Server keinen Zugriff auf die Konsole geschweige eine windows-exe ausführen. Damit scheint mir die gesame Welt der Composer Bibliothemsverwaltung verschlossen. Man kann zwar alle Erweiterungen, PlugIns und Bibliotheken auch manuell installieren aber mit Composer wäre schon besser. Wie kann man Composer z.B. zur PlugIn Verwaltung von Roundcube-Webmail auh ohne Konsolen Zugriff einrichten. Bitte komme mir keiner mit, dann miete einen eigenen Server ... es muss ja auch ohne gehen.

    • @VitalijMik
      @VitalijMik  Před 9 měsíci

      hi leider ist es so, dass man composer nicht direkt auf einem shared hoster nutzen kann. das einzige was dir übrig bleibt wäre lokal composer zu nutzen und dann den kompletten vendor ordner hoch zu laden. das dauert dann aber natürlich da ggf viele dateien heruntergeladen werden.
      alternative wäre wirklich halt einen webserver zu mieten, bei hetzner kostet dieses ca 5 euro pro monat und du hast da auch ssh zugang

    • @VJKaiC
      @VJKaiC Před 9 měsíci

      @@VitalijMik Danke für die rasche Antwort! Hätte ich das früher gewusst, hätte ich mir viel Recherchearbeit sparen können.
      Ich programmiere stets direkt auf dem live-server also ohne Localhost oder Testsystem weil ich nicht mit 2 Datenbanken arbeiten möchte (eine lokale und eine online). Sind ja auch nur private Verwaltungstools für meinen Job. Für 5 € scheint es bei Hetzner auch nur Webhosting zu geben. Server fangen da bei 35 €/Mon an. Grade gucke ich mir die VServer bei GAMERZHOST an.

    • @VitalijMik
      @VitalijMik  Před 9 měsíci

      @@VJKaiC ne hetzner cloud hosting, da ist nur die CPU geshared, du hast aber deine eigene virtuelle machine und kannst da einen docker container usw installieren. sollte man aber nicht nutzen wenn man vorher noch nie einen webserver unter linux hochgefahren hat.
      Einfachster weg, ganz normal wie du schon bisher arbeitest lokal alles aufsetzen und dann alle dateien hochladen

    • @VJKaiC
      @VJKaiC Před 9 měsíci +1

      @@VitalijMik Hab mit dem Service von 1Blu telefoniert. Per SSH Client (Bsp. Putty) ist Zugriff auf die Konsole möglich. Damit habe ich Composer installiert bekommen.
      Mein nächstes Problem sind jetzt die Erweiterungen für Roundcube oder html2pdf eizubinden ... aber das wird dann schon (hoffentlich)...

  • @tonisun4785
    @tonisun4785 Před 2 lety +1

    ❤🧡💛💚💙💜🤎🖤🤍
    Miki Maus wenn man sich nur auf gesprochene konzentrieren muss,
    ist nicht so effektive wie wenn man es auch sieht.

    • @VitalijMik
      @VitalijMik  Před 2 lety

      Das Video ist auch einer meiner ersten. Habe später natürlich dazugelernt

  • @Rene04277
    @Rene04277 Před 3 lety

    Ich hätte mir gewünscht etwas mehr auf die Möglichkeiten von Composer einzugehen bzw. anhand einfacher Beispiele aufzuzeigen, was man sich an Arbeit spart, insbesondere im Einsatz mit opjektorientierten Frameworkes wie Symfony.

    • @VitalijMik
      @VitalijMik  Před 3 lety

      Das Video hat den Sinn dass ich auf das Video dann verlinken kann um die Details zu erklären wenn ich Composer einsetze.
      czcams.com/video/NBxwWmPZT6U/video.html hier ist ein Video wo ich Symfony, Laravel und Yii installiere mit Composer und zeige dann drauf.
      Hier zeige ich wie man Mails versendet mit Swiftmailer czcams.com/video/62FOiOSBxsg/video.html und natürlich auch mit Composer.
      Das Video hat nur als Referenz Sinn und ist auch so gedacht

    • @Rene04277
      @Rene04277 Před 3 lety

      @@VitalijMik Ok, danke. Gibt es Nachteile bsp. Fehler auf dem Produktivsystem, wenn ich mir mit Composer mühseligen PHP-Code spare?

    • @VitalijMik
      @VitalijMik  Před 3 lety

      @@Rene04277 theoretisch wenn composer über deine Domain aufrufbar ist, hast du sogar Sicherheitslücken. Aber du kannst mit Composer dir jedes Paket installieren und du musst selbst kaum noch Programmieren sondern Pakete miteinander verknüpfen, erspart sehr viel Arbeit

  • @pinkeHelga
    @pinkeHelga Před rokem

    Also irgendwie kann ich mich mit composer nicht wirklich anfreunden. Schon die vom Linuxdistributor mit PHP 8.1 installierte Version wirft nur Fehler und läuft gar nicht. Ich hab auch nicht die Zeit für ewige Fehleranalyse. Ich muß streight mein Projekt durchbringen. 😕
    Wenn alles so reibungslos laufen würde wie npm, wär's ja schön.

    • @pinkeHelga
      @pinkeHelga Před rokem

      PHP Warning: Missing arginfo for Sass::compile_file() in Unknown on line 0
      Fatal error: Declaration of Composer\IO\BaseIO::emergency(Stringable|string $message, array $context = []): void must be compatible with PsrExt\Log\LoggerInterface::emergency($message, array $context = []) in /usr/share/php/Composer/IO/BaseIO.php on line 163
      composer läuft überhaupt nicht, nicht mal help.
      Mit pecl hatte ich in der Vergangenheit ähnliche Versionsprobleme. Irgendwie scheint es keine stabile Lösung für PHP zu gegeben.

    • @pinkeHelga
      @pinkeHelga Před rokem

      Eigentlich soll PHP ja auch gar kein Hauptbestandteil vom Projekt werden. Ein einfacher Login mit Hash und Datenbanksession für die Seite drum herum muß genügen. Der Großteil läuft dann über Node-js websocket und Unity3d. Nur authorisierter Dateidownload wird über PHP laufen.
      Mich kotzen die Kinderkrankheiten von PHP gerade schon wieder an.

    • @pinkeHelga
      @pinkeHelga Před rokem

      Ok, ich hab per grep das Paket für ein php-psr Modul lokalisiert und entfernt. Besser als die Deklaration in composer weniger restriktiv zu patchen. Das Sass Modul, das ne Warnung schmeißt, auch gleich entfernt. brauche ich beide vorerst nicht.
      Die beiden Pakete psr und composer sind in der Distri nicht als Konflikt markiert und wurden entsprechend nicht von der Paketverwaltung als solcher erkannt.
      Erlebe ich bei PHP leider zu oft, daß da Konflikte auftreten.
      Was soll's, nun startet composer schon mal. Mal sehen, wo das nächste Problem wartet...

    • @pinkeHelga
      @pinkeHelga Před rokem

      Ich hasse diese ganzen Metaprobleme, die einen von der Kernarbeit abhalten.

    • @VitalijMik
      @VitalijMik  Před rokem

      wie hast du denn composer installiert dass du solche Probleme hast? Schau mal wie ich es installiere
      github.com/BlackScorp/server/blob/main/webserver/Dockerfile#L10-L12
      ich denke du benutzt irgendwelche seltene pakete, ich hatte meist eher probleme bei frameworks wo es über 20 dependencies gibt. aber nicht bei frischen projekten

  • @ahadaha155
    @ahadaha155 Před 4 lety +1

    Composer & Autoloading:
    Wenn ich Composer (u. a.) für autoloading nutze, kann ich mir, so wie ich das in diesem Video verstanden habe, ersparen, selbst einen autoloader (wie in deinem Autoloading-Video: czcams.com/video/wK6AVvO-rAI/video.html ) zu schreiben, denn Composer macht dann das für mich - oder wie?

    • @VitalijMik
      @VitalijMik  Před 4 lety +1

      Genau, bei dem Autoloader video ging es darum zu erklären dass es überhaupt sowas gibt. Aber ja Composer erstellt für dich automatisiert einen Autoloader, sowohl PSR-0 als auch PSR-2

  • @uhtr8373
    @uhtr8373 Před rokem +1

    Respekt, Sie sind gut in der Materie, aber leider für mich zu gut, zu Viel information auf einmal, mein Tip Bitte Kanaliesieren Sie Ihre Infos. Trotzdem sehr viel zu Viel Informationen aufeinmal lern effekt bleibt aus.

    • @VitalijMik
      @VitalijMik  Před rokem

      dankeschön, man kann auch nicht alles auf ein mal lernen, das thema war schon sehr kompakt. Bitte denk dran dass der Beruf eines Entwicklers nicht mal eben so via YT erlernt werden kann. Es ist nicht umsonst ein Ausbildungsberuf ;)

  • @ahadaha155
    @ahadaha155 Před 4 lety +1

    @ ALLE Composer-Anfänger, SO WIE ICH: czcams.com/video/9rr84XofWsA/video.html -->
    SEHR verständlich & kompakt erklärt & auf Deutsch (mit Power Point Folien zum Mitlesen)

    • @VitalijMik
      @VitalijMik  Před 4 lety

      Das Video zeigt ja alles zu Composer, bei mir ging es nur um die Einführung, denn obowhl wir 2020 Haben, gibt es immer noch viele Entiwckler die es nicht kennen oder sich nicht trauen es zu nutzen

    • @ahadaha155
      @ahadaha155 Před 4 lety

      @@VitalijMik weiß schon, dass es dir nur um 1 einführung ging. ich habe BEWUSST mit diesem link ERGÄNZEN wollen. ;-) :-)

  • @user-uk1tj7qq6p
    @user-uk1tj7qq6p Před 17 dny

    Er redet viel, aber am Ende kommt nichts dabei heraus. Ich habe schon mehrmals meine Zeit vergoldet. Schade

    • @VitalijMik
      @VitalijMik  Před 17 dny

      Schade dass du so siehst, was hättest du denn anders erwartet? Ich habe erklärt was Composer ist, habe gezeigt wie man es downloaded und habe gezeigt wie man Pakete damit installiert. Damit ist die Einführung abgeschlossen