Textmeddelanden har blivit extremt utbrett i hela världen - till det ställe där ett ökat antal webbapplikationer har integrerat SMS för att meddela användare av händelser, försäljning eller kuponger direkt via sina mobila enheter.
I denna handledning kommer vi att täcka grunden för att skicka textmeddelanden med PHP.
Innan vi går in i steg-för-steg-processen kanske du vill titta på en färdig lösning: SMS-avsändare, tillgänglig på Envato Market. Detta PHP-skript låter dig:
Om du föredrar att bygga din textmeddelandesändare från början, så gör du det här.
Att skicka ett SMS-meddelande är faktiskt ganska enkelt.
Nedan följer ett förenklat diagram över hur ett meddelande kan skickas från en webbapplikation till en trådlös enhet.
Vi bryter ner det här - en bit i taget:
De flesta trådlösa nätverk har en SMS-gateway genom vilken e-postmeddelanden kan skickas som textmeddelanden till en mobilenhet. Det här är trevligt, för det är från en utvecklare synvinkel generellt gratis, men det är förstås inte en gratis tjänst för slutanvändaren. Avgifter gäller fortfarande för mottagaren av meddelandet och meddelanden som skickas via e-post faktureras som ett icke-nätverksmeddelande.
För att skicka ett SMS via e-post behöver du i allmänhet bara två saker:
Följande konvention kan följas för de flesta bärare:
[email protected]
telefonnummer
är mobilenhetens telefonnummer att skicka meddelandet till, och domainName.com
är adressen till nätets SMS Gateway.
För att skicka en text till Mr Example kan du helt enkelt lägga till [email protected] till någon e-postklient, skriv ett meddelande och tryck på Skicka. Detta skickar ett textmeddelande till telefonnummer +1 (385) 555-0168 på Verizon Wireless Network.
Till exempel skickar jag ett textmeddelande till mig själv med hjälp av Gmail.
När min telefon tar emot meddelandet ska det se ut så här:
Ganska häftigt!
post
Fungera Låt oss ta saker ett steg längre. Med hjälp av SMS Gateway kan vi skicka ett SMS via e-post med PHP post
fungera. De post
funktionen har följande signatur:
bool post (sträng $ till, sträng $ ämne, sträng $ meddelande [, sträng $ additional_headers [, sträng $ additional_parameters]])
Du kan läsa mer om det här.
$ till
definierar mottagaren eller mottagarna av meddelandet. Giltiga exempel inkluderar: $ ämne
är ganska självförklarande; Det ska vara en sträng som innehåller det önskade ämnet. Men SMS kräver inte ett ämne. $ message
är meddelandet som ska levereras. Som nämnts i PHP-handboken ska "varje rad separeras med en LF (\ n). Linjerna får inte vara större än 70 tecken." För att replikera den tidigare funktionaliteten kunde vi skriva följande PHP-kod:
post ('[email protected]', ',' Testing ');
Låt oss köra ett test med PHP för att se till att allt är korrekt inställt och att post
funktionen skickar faktiskt ett textmeddelande. Med följande kod kan vi köra:
När min telefon tar emot meddelandet ser det ut så här:
Om du får ett fel, se felsökningssektionen.
Som du kan se i bilden ovan visar meddelandet att det kommer från Gmail. Detta beror på att jag rutter alla mina utgående meddelanden från min lokala server genom den tjänsten. Tyvärr har jag, med detta skrivande, misslyckats med att ändra Från
rubrik för att reflektera en alternativ adress. Det verkar som om e-postrubrikerna är avtagna och ersatta med rubriker som utarbetats av SMS-gatewayen. Om någon vet om en lösning, vänligen lämna en kommentar och låt oss få veta!
Med grunderna ur vägen, låt oss ta den här idén och lägga in ett användargränssnitt runt det. Först ska vi skapa en enkel form:
Skickar SMS med PHP