Sachverhalt:
A.
Die Staatsanwaltschaft Zürich-Sihl führt eine Strafuntersuchung gegen A._ wegen Widerhandlung gegen das Betäubungsmittelgesetz. Sie wirft ihm vor, zusammen mit B._ und C._ Betäubungsmittelhandel betrieben zu haben.
A._ wurde am 22. Februar 2019 verhaftet, nachdem die Stadtpolizei Zürich bei ihm 55,3 g Kokain (brutto) gefunden hatte. Das Zwangsmassnahmengericht des Bezirks Zürich versetzte ihn am 25. Februar 2019 in Untersuchungshaft und verlängerte die Haft am 19. März 2019 ein erstes Mal. Am 19. Juni 2019 verlängerte es die Untersuchungshaft bis zum 20. September 2019. Eine von A._ dagegen erhobene Beschwerde wies das Obergericht des Kantons Zürich mit Beschluss vom 9. Juli 2019 ab.
B.
Mit Beschwerde in Strafsachen an das Bundesgericht vom 18. Juli 2019 beantragt A._, der Beschluss des Obergerichts sei aufzuheben und er selbst unverzüglich aus der Untersuchungshaft zu entlassen. Eventualiter seien Ersatzmassnahmen anzuordnen.
Das Obergericht hat auf eine Stellungnahme verzichtet. Die Staatsanwaltschaft hat sich nicht vernehmen lassen.
Erwägungen:
1.
Der angefochtene Entscheid betrifft die Verlängerung der Untersuchungshaft (Art. 220 Abs. 1 StPO). Dagegen ist die Beschwerde in Strafsachen nach Art. 78 ff. BGG gegeben. Der Beschwerdeführer nahm vor der Vorinstanz am Verfahren teil und befindet sich nach wie vor in Haft. Er ist deshalb nach Art. 81 Abs. 1 BGG zur Beschwerde berechtigt.
2.
2.1. Nach Art. 221 StPO sind Untersuchungs- und Sicherheitshaft unter anderem zulässig, wenn die beschuldigte Person eines Verbrechens oder Vergehens dringend verdächtig ist und ernsthaft zu befürchten ist, dass sie Personen beeinflusst oder auf Beweismittel einwirkt, um so die Wahrheitsfindung zu beeinträchtigen (Abs. 1 lit. b). An ihrer Stelle sind Ersatzmassnahmen anzuordnen, wenn sie den gleichen Zweck wie die Haft erfüllen (Art. 212 Abs. 2 lit. c und Art. 237 ff. StPO). Das Obergericht bejahte den dringenden Tatverdacht der Widerhandlung gegen das Betäubungsmittelgesetz (SR 812.121) sowie Kollusionsgefahr. Der Beschwerdeführer wirft ihm eine Verletzung des rechtlichen Gehörs vor, weil es sich mit seinen Vorbringen zur Kollusionsgefahr nicht auseinandergesetzt habe. Eine solche Gefahr bestehe in seinem Fall klarerweise nicht. Zudem sei jedenfalls eine Ersatzmassnahme, beispielsweise ein Kontakt- oder Rayonverbot, ausreichend. Die gegenteilige Annahme beruhe auf einer willkürlichen Beweiswürdigung (Art. 9 BV).
2.2. Der angefochtene Entscheid genügt der verfassungsrechtlichen Begründungspflicht ohne Weiteres (Art. 29 Abs. 2 BV; BGE 143 III 65 E. 5.2 S. 70 f. mit Hinweisen). Das Obergericht hat detailliert erklärt, weshalb es von Kollusionsgefahr ausgeht. Der Beschwerdeführer seinerseits legt nicht dar, welche seiner Argumente es dabei ignoriert haben soll. Die Beschwerde ist in dieser Hinsicht unzureichend begründet (Art. 42 Abs. 2 BGG). Dasselbe gilt für die Behauptung, es bestehe klarerweise keine Kollusionsgefahr und eine Ersatzmassnahme sei ausreichend. Darauf ist nicht einzutreten.
3.
3.1. Der Beschwerdeführer kritisiert weiter, der angefochtene Entscheid laufe dem Beschleunigungsgebot zuwider (Art. 5 StPO). Das Obergericht habe festgehalten, es treffe nicht zu, dass er noch nie von der Staatsanwaltschaft befragt worden sei. Dabei habe er Derartiges gar nicht geltend gemacht, sondern vielmehr beanstandet, dass die Befragungen nicht die erforderliche Tiefe aufgewiesen hätten. Zudem hätte er schon lange mit B._ und C._ sowie mit anderen Personen, deren Befragungen abgeschlossen seien (u. a. D._), konfrontiert werden müssen. Die Einvernahmen dieser Personen seien weit vor dem 19. Juni 2019 abgeschlossen worden und zudem wenig komplex, sodass umgehend eine Konfrontationseinvernahme mit ihm hätte durchgeführt werden müssen. Auch in dieser Hinsicht sei das Obergericht nicht auf seine Argumente eingegangen und habe damit seinen Anspruch auf rechtliches Gehör verletzt.
3.2. Das Obergericht legt dar, der Beschwerdeführer sei am 23. Februar 2019 polizeilich befragt worden. Am 24. Februar 2019 habe die Staatsanwaltschaft eine Hafteinvernahme und am 16. Mai 2019 und 19. Juni 2019 zwei weitere Einvernahmen durchgeführt, wobei sie ihm die Sicherstellungen und die Fotodokumentation vorgehalten habe. Zutreffend sei, dass noch keine Konfrontationseinvernahme durchgeführt worden sei. Dies verletze das Beschleunigungsgebot jedoch nicht. Die Staatsanwaltschaft habe das Verfahren bisher ordentlich vorangetrieben. Sie habe seit der Verhaftung des Beschwerdeführers B._ und C._ sowie Auskunftspersonen befragt. Zudem habe sie die rückwirkende Überwachung des Mobiltelefons des Beschwerdeführers beantragt und sei mit deren Auswertung beschäftigt. Hinzu komme, dass auch die Daten der Mobiltelefone der Mitbeschuldigten auszuwerten seien. Schliesslich habe sie ein Entsiegelungsverfahren durchlaufen müssen, da der Beschwerdeführer sich gegen die Durchsuchung seiner elektronischen Geräte gewehrt habe. In Anbetracht all dieser Untersuchungshandlungen sei eine Verletzung des Beschleunigungsgebots zu verneinen.
3.3. Jede Person hat in Verfahren vor Gerichts- und Verwaltungsinstanzen Anspruch auf Beurteilung innert angemessener Frist (Art. 29 Abs. 1 BV und Art. 6 Ziff. 1 EMRK). Befindet sich eine beschuldigte Person in Haft, so wird ihr Verfahren vordringlich durchgeführt (Art. 5 Abs. 2 StPO).
Nach der Rechtsprechung ist in einem Haftprüfungsverfahren die Rüge, das Strafverfahren werde nicht mit der gebotenen Beschleunigung geführt, grundsätzlich nur so weit zu beurteilen, als die Verfahrensverzögerung geeignet ist, die Rechtmässigkeit der Untersuchungshaft in Frage zu stellen und zu einer Haftentlassung zu führen. Dies ist der Fall, wenn sie besonders schwer wiegt und zudem die Strafverfolgungsbehörden, z.B. durch eine schleppende Ansetzung der Termine für die anstehenden Untersuchungshandlungen, erkennen lassen, dass sie nicht gewillt oder nicht in der Lage sind, das Verfahren mit der für Haftfälle gebotenen Beschleunigung voranzutreiben und zum Abschluss zu bringen (BGE 140 IV 74 E. 3.2 S. 80 mit Hinweisen). Bei weniger gravierenden Verletzungen des Beschleunigungsgebots kann unter Umständen angezeigt sein, die zuständige Behörde zur besonders beförderlichen Weiterführung des Verfahrens anzuhalten und die Haft gegebenenfalls nur unter der Bedingung der Einhaltung bestimmter Fristen zu bestätigen. Im Übrigen ist die Frage dem Sachrichter vorzubehalten, der sie unter der gebotenen Gesamtwürdigung beurteilen und auch darüber befinden kann, in welcher Weise - z.B. durch eine Strafreduktion - eine allfällige Verletzung des Beschleunigungsgebots wieder gut zu machen ist (BGE 128 I 149 E. 2.2.2 S. 152; Urteil 1B_384/2018 vom 4. September 2018 E. 3.1; je mit Hinweisen).
3.4. Von einer schweren Verletzung des Beschleunigungsgebots kann vorliegend keine Rede sein. Aus den Feststellungen der Vorinstanz und den Akten geht hervor, dass die Staatsanwaltschaft seit der Inhaftierung des Beschwerdeführers zahlreiche Untersuchungshandlungen vorgenommen hat. Längere Zeitabschnitte der Untätigkeit sind nicht erkennbar. Wie ausführlich sie die einzelnen Befragungen gestaltet, steht grundsätzlich in ihrem Ermessen, ebenso, in welchem Zeitpunkt sie eine Konfrontationseinvernahme als sinnvoll erachtet. Von den Strafbehörden kann nicht verlangt werden, dass sie sich ständig einem einzigen Fall widmen, und das Beschleunigungsgebot ist nicht bereits verletzt, wenn die eine oder andere Handlung etwas rascher hätte vorgenommen werden können (BGE 130 IV 54 E. 3.3.3 S. 56; Urteil 1B_328/2019 vom 17. Juli 2019 E. 2.2; je mit Hinweisen). Der angefochtene Entscheid, auf dessen Erwägungen vollumfänglich verwiesen werden kann, ist somit nicht zu beanstanden.
3.5. Nicht einzutreten ist auch insofern auf die Rüge der Verletzung des rechtlichen Gehörs. Der Beschwerdeführer legt wiederum nicht dar, welche seiner Argumente das Obergericht unberücksichtigt gelassen haben soll (Art. 42 Abs. 2 BGG).
4.
Die Beschwerde ist aus diesen Gründen abzuweisen, soweit darauf einzutreten ist.
Der Beschwerdeführer stellt ein Gesuch um unentgeltliche Prozessführung und Rechtsverbeiständung für das bundesgerichtliche Verfahren. Da die gesetzlichen Voraussetzungen erfüllt sind, kann dem Gesuch entsprochen werden (Art. 64 BGG). Insbesondere in Anbetracht der über weite Strecken unzureichend begründeten Beschwerde handelt es sich jedoch um einen Grenzfall.
Demnach erkennt das Bundesgericht:
1.
Die Beschwerde wird abgewiesen, soweit darauf einzutreten ist.
2.
Das Gesuch um unentgeltliche Rechtspflege wird gutgeheissen.
2.1. Es werden keine Gerichtskosten erhoben.
2.2. Rechtsanwalt Boris Etter wird zum unentgeltlichen Rechtsbeistand ernannt und für das bundesgerichtliche Verfahren aus der Bundesgerichtskasse mit Fr. 1'000.-- entschädigt.
3.
Dieses Urteil wird dem Beschwerdeführer, der Staatsanwaltschaft Zürich-Sihl und dem Obergericht des Kantons Zürich, III. Strafkammer, schriftlich mitgeteilt.
Lausanne, 8. August 2019
Im Namen der I. öffentlich-rechtlichen Abteilung
des Schweizerischen Bundesgerichts
Der Präsident: Chaix
Der Gerichtsschreiber: Dold