Har du någonsin tittat på listan över funktioner som finns i PHP? Jag räknade bara 5025 på PHP-referenssidan. Beviljas, det beror på vilka tillägg du har aktiverat, men ändå: det är en massa funktioner! Medan jag inte kan visa dig var och en av dem, om du är ny på språket, presenterar jag dig för sju riktigt praktiska i denna snabba tips!
array_rand
Låt oss börja med en enkel. Vill du någonsin få ett slumpmässigt objekt ur en matris? Du kan använda rand
eller mt_rand
för att få ett slumptal, passerar 0 och det sista indexet för matrisen som min och max parametrarna; Detta ger dig en slumpmässig nyckel som du kan använda för att dra ett värde från din array.
Det finns dock ett sätt som är lite snabbare: array_rand
. Bara skicka det till din matris, och det kommer att returnera den slumpmässiga nyckeln.
$ sites = ["Netuts +", "Psdtuts +", "Mobiletuts +", "Mactuts +"]; $ k = array_rand ($ -platser); $ webbplatser [$ k];
Om du vill ha mer än ett slumpmässigt värde från matrisen, skicka en andra parameter som identifierar hur många; Du får tillbaka en rad slumpmässiga nycklar.
strip_tags
Det är inte ovanligt att acceptera större bitar av text från en användare: kanske som en kommentar eller en bio. Självklart vill du antagligen inte att några HTML-taggar ska tillåtas i den texten, eller hur? Du vill inte ha slumpmässig JavaScript-körning, eller kanske din styling dikterar att de bara använder vanlig text. Så, du vill ta bort de HTML-taggar de anger, med strip_tags
:
$ message = "Det här är min bio"; echo strip_tags ($ message); //" Detta är min bio "
Självklart kanske du vill tillåta vissa taggar, som ,
, eller
, för några enkla styling; skicka en sträng som listar dem som den andra parametern:
$ message = "Detta är min bio"; echo strip_tags ($ message,""); // "Detta är min bio"
strftime
Datum är en stor del av alla webapps, så du borde kunna skriva ut dem i vilket format du behöver. Det är inte svårt att få en tidstämpel-du kommer att dra den från en databas eller använda tid()
, kanske - men vad sägs om att formatera det? De strftime
funktionen kan formatera den tidstämpeln på något sätt du vill. Du skickar det en formatsträng och tidstämpeln och får datumet tillbaka.
strftime ("% B% d,% Y", tid ()); // 28 juli 2012
Självklart är det omöjligt att memorera alla formateringstecken, så jag använder den praktiska strfti.me för att hjälpa mig; ge det ett försök, och du kommer också att älska det.
basnamn
När du arbetar med en fil vill du vanligtvis komma till den via den absoluta banan. Om du behöver visa information om den här filen till användaren, vill du förmodligen bara visa dem filnamnet och inte hela sökvägen. Stiga på basnamn
: Den här funktionen kommer att radera den sökvägen till bara filnamnet. bara ge det vägen som parameter; om du vill bli av med ett suffix, som en filtillägg, skicka det suffixet som den andra parametern.
$ path = "/some/long/path/to/the/special_file.txt"; $ filename1 = basnamn ($ path); // special_file.txt $ filename2 = basnamn ($ path, ".txt"); // special_file
lista
Den här är ganska cool: låt oss säga att du har en matris, och du vill tilldela sina objekt till egna variabler. De lista
funktionen gör det här super enkelt:
$ array = ["Ellery", "Queen"]; lista ($ first_name, $ last_name) = $ array; echo $ first_name; // Ellery echo $ last_name; // Queen
Som du kan se, skickar vi bara de nya variabelnamnen som parametrar till lista
funktion och set som är lika med matrisen. Det skiljer sig lite från den normala syntaxen, eftersom funktionssamtalet är till vänster, men ja det fungerar. Här är ett bra exempel från PHP docs (för explodera
):
$ data = "foo: *: 1023: 1000 :: / home / foo: / bin / sh"; lista ($ user, $ pass, $ uid, $ gid, $ gecos, $ home, $ shell) = explodera (":", $ data);
räckvidd
Om du någonsin behöver en lista med siffror för att iterera över, vill du kolla in räckvidd
fungera. Bara skicka det till ett start- och slutnummer (eller bokstav), och det kommer att returnera en rad av siffrorna:
intervall (0, 10); // array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10) intervall ('a', 'f'); // array ('a', 'b', 'c', 'd', 'e'. 'f');
Som du kan se är det ett omfattande sortiment, så båda siffrorna du definierar ingår. Du kan också skicka ett stegparameter för att ange inkrementet mellan antal:
intervall (2, 10, 2); // array (2, 4, 6, 8, 10);
isset
Här är ett praktiskt sätt att kontrollera om en variabel har ställts in: använd isset
fungera. Du skickar det bara till ett variabelt namn, och det kommer att returneras sant om den variabeln finns och är inställd på något annat än NULL
.
$ name = "Joe"; isset ($ name); // true isset ($ ålder); // false
Eftersom denna funktion också fungerar med objekt i array och associativa arrayer, används denna funktion ofta för att det finns särskilda knappar på $ _GET
och $ _POST
superglobal arrayer: om ett givet värde existerar, gör du en sak; annars gör du något annat. Till exempel kan en söksida göra något så här:
om isset ($ _ GET ['query'])) // få resultat och visa dem annat // visa standardinställningar
Jag har skrivit en ny ebook, Komma bra med PHP, med Rockable Press.
Tja, där går du: sju praktiska PHP-funktioner du borde hitta ganska användbara som du kodar. Om du är ny på PHP, vill jag låta dig läsa om någonting: Jag har skrivit en ny ebook, Komma bra med PHP, med Rockable Press. Jag skrev det speciellt för dem som inte vet något om PHP, men vill få fart på snabbheten så fort som möjligt. Om det är du hoppas jag att du ska kolla in det när det släpps i extremt nära framtid! Vi håller dig uppdaterad.
Så nu när du har läst mina val, vad tycker du att PHP: s mest praktiska funktion är? Låt oss veta i kommentarerna!