echo $begrüßung;
Die Daten, die ich per socket_read erhalten sind allerdings leer, wobei kein Fehler ausgelöst wird (socket_strerror für den Fehlercode 0: Success). Das Problem scheint also noch an einer anderen Stelle zu liegen nehme ich an.
DIe Socket-Funktionen können sich blockierend oder nicht blockierend verhalten. Wenn blocking gesetzt ist, wartet ein Lesevorgang, bis Daten eintreffen. Im nonblocking-Mode kommt die Funktion sofort wieder zurück, auch ohne Daten. Da musst du dann selbst für eine Wiederholung der Leseversuche sorgen.
echo "$verabschiedung $name";