Multi: Einfachtelnet ohne Login

Mahlzeit,

ich will einen einfachen Text per TCP/IP über das Netzwerk schicken.
Bisherher rufe ich per shell_exec netcat auf (Debian/Etch)

exec('echo SETPORT 1.1 | nc -w 1 HOST PORT');

Der Nachteil dabei ist, nc wartet bis zum eingestellen Timeout (also hier 1s) bis ich den nächsten Befehl absetzen kann.

Kann ich ohne grösseren Aufwand das Gleiche per fsockopen o.ä. realisieren?
Eine Suche nach telnet+php ergab bisher nur grössere Klassen mit Login u.ä.

Hat jemand nen Link oder nen kurzen Codeschnippsel? Hab mich bisher nur am Rand mit Socketverbindungen unter PHP beschäftigt, und wenn ich dafür was in C schreibe, kann ich gleich netcat nutzen ;)

  1. Mahlzeit,

    Nur fürs Archiv, falls mal jemand danach sucht oder sich dafür interessiert:

      
    $socket = socket_create(AF_INET, SOCK_STREAM, 0);  
    $result = socket_connect($socket, $host, $port);  
    socket_write($socket, $string, strlen($string));  
    $result = socket_read($socket, 1024);  
    socket_close($socket);  
    
    

    $host: Hostname oder IP
    $port: anzusprechender Port
    $string: su sendender String
    $result: empfangene Daten, falls die Gegenstelle was zurücksendet

    1. echo $begrüßung;

      Nur fürs Archiv, falls mal jemand danach sucht oder sich dafür interessiert:

      Leider wieder ein Beispiel komplett ohne Fehlerbehandlung. Ein ausführliches gibt es im PHP-Handbuch: http://de.php.net/manual/en/sockets.examples.php.

      echo "$verabschiedung $name";

      1. Mahlzeit,

        Leider wieder ein Beispiel komplett ohne Fehlerbehandlung.

        Und?
        Ich habe einen Denkansatz gepostet und keinen Code, der per Copy&Paste zu übernehmen ist.
        Wenn ich wollte, dass jemand den Code nur kopieren braucht, hätte ich das ganze Projekt veröffentlicht.

        Mein Posting war aber exakt im Sinne des "Self" und deshalb wurden von mir alle Fehlerbehandlungen entfernt.

        1. echo $begrüßung;

          Leider wieder ein Beispiel komplett ohne Fehlerbehandlung.
          Und? Ich habe einen Denkansatz gepostet und keinen Code, der per Copy&Paste zu übernehmen ist.
          Wenn ich wollte, dass jemand den Code nur kopieren braucht, hätte ich das ganze Projekt veröffentlicht.

          Das hast du aber nicht dazugeschrieben. Außerdem zeigt sich immer wieder, dass beim Copy'n'Paste nicht nachgedacht wird. Eine Fehlerbehandlung ist ja noch nicht mal angedeutet, um so zum Nachdenken anzuregen.

          Mein Posting war aber exakt im Sinne des "Self" und deshalb wurden von mir alle Fehlerbehandlungen entfernt.

          Wenn du so willst, wäre gar keine Lösung im "Self"-Sinn gewesen. Vielmehr fände ich eine kommentierte, erklärende Lösung eher im Self-Sinne. "Die Energie des Verstehens" hast du nämlich nicht berücksichtigt.

          echo "$verabschiedung $name";

          1. Mahlzeit,

            Vielmehr fände ich eine kommentierte, erklärende Lösung eher im Self-Sinne.

            Die kann jeder, den es interessiert, in der Doku nachlesen. Ich wollte lediglich meine Frage nicht ohne Antwort dastehen lassen, wenn ich eine gefunden hab.

            Die Frage ist eher, wenn du davon Ahnung hast, wieso hast du nicht geantwortet sondern reagierst erst jetzt, nachdem eine Lösung bekannt ist?

            1. echo $begrüßung;

              Die Frage ist eher, wenn du davon Ahnung hast, wieso hast du nicht geantwortet sondern reagierst erst jetzt, nachdem eine Lösung bekannt ist?

              Es besteht keine Antwortpflicht. Ich muss nicht zu jedem (trivialen) Thema etwas sagen, auch dann nicht, wenn ich was weiß. Andererseits steht es mir wie jedem anderen auch frei Lösungen und "Lösungen" zu kommentieren.

              echo "$verabschiedung $name";

              1. Mahlzeit,

                Es besteht keine Antwortpflicht.

                Richtig.
                Wenn du dann allerdings einen Lösungsvorschlag negativ kommentierst, ordne ich das unter "wichtigmachen" ein. Denn selbst keinen Lösungsvorschlag einbringen, den von anderen aber kritisieren, ist wohl nicht der Sinn dieses Forums.

                Und somit hat sich die Sache für mich erledigt, da du, ausser mich zu kritisieren, absolut gar nichts zum Thema beigetragen hast.

                1. Hallo.

                  Wenn du dann allerdings einen Lösungsvorschlag negativ kommentierst, ordne ich das unter "wichtigmachen" ein. Denn selbst keinen Lösungsvorschlag einbringen, den von anderen aber kritisieren, ist wohl nicht der Sinn dieses Forums.

                  Im Sinn des Forums sind nachvollziehbare Lösungsansätze. Zu einem solchen fehlte deinem lediglich ein kleiner Hinweis auf die Fehlerbehandlung, und der wurde freundlicherweise nachgereicht. Nicht von dir, sondern jemand anderem. Was erachtest du daran als negativ? Die Formulierung hoffentlich nicht, denn dahingehend bist du ja selbst nicht zimperlich.

                  Und somit hat sich die Sache für mich erledigt, da du, ausser mich zu kritisieren, absolut gar nichts zum Thema beigetragen hast.

                  Doch, neben dem erwähnten Hinweis auch den einzigen relevanten Verweis innerhalb dieses Threads.
                  MfG, at