KomputerPengaturcaraan

PHP: bekerja dengan rentetan. Fungsi String PHP

Tapak boleh dibahagikan kepada statik dan dinamik. Setelah menguasai HTML dan CSS, yang membolehkan anda membuat kad perniagaan yang cantik di Internet, ramai yang berfikir bagaimana untuk membuat laman web dinamik di PHP. Dalam kes ini, susun atur perlu mengambil kira bahawa sekarang dia mula mengkaji pengaturcaraan web: prinsip kerja dengan tapak akan berbeza. Salah satu masalah pertama yang pemula di muka PHP bekerja dengan rentetan, membaca dan memprosesnya.

Perlu diingat bahawa dalam PHP, fungsi bekerja dengan rentetan bermaksud banyak kaedah, jadi memulakan pengajian mereka dengan manipulasi yang paling mudah, seperti mengeluarkan rentetan, mencari, mendapatkan atau menggantikan substring, menukar daftar, dan mengembalikan panjang rentetan. Banyak fungsi tidak berfungsi dengan baik dengan simbol Cyrillic. Oleh itu, semua contoh ditulis dalam bahasa Inggeris untuk kejelasan. Untuk rentetan Cyrillic, fungsi yang sama digunakan, tetapi dengan awalan mb_ (sebagai contoh, mb_strpos ()). Sebelum menggunakan analog, dalam php.ini adalah perlu untuk tidak mengulas garis; extension = php_mbstring.dll, hanya mengeluarkan titik koma.

Membuat dan memaparkan rentetan

Kami akan menghuraikan output rentetan ke skrin dengan menggunakan bahasa echo biasa. Seorang programmer boleh mengeluarkan rentetan sekaligus:

Echo "This is New String"

Atau mula buat pemboleh ubah, kemudian paparkan pada skrin:

$ Str = "Ini adalah String Baru";

Echo $ str;

Sekiranya anda perlu memaparkan beberapa baris dalam satu, maka mereka mengambil jalan penyelesaiannya:

Echo "It". "Baru". "String";

Atau

$ Str1 = "Ini";

$ Str2 = "Baru";

$ Str3 = "Line";

Echo $ str1. $ Str2. $ Str3;

Dalam kes yang kedua, baris NewNet akan dipaparkan. Anda boleh menambah ruang dengan segera dengan memanggil echo:

Echo $ str1. ''. $ Str2. ''. $ Str3;

Dalam kes ini, skrin akan dipaparkan: "Ini adalah Talian Baru". Concatenation mungkin bukan sahaja apabila keluaran, tetapi juga apabila membuat rentetan:

$ Str1 = "Ini";

$ Str2 = "Baru";

$ Str3 = "Line";

$ String = $ str1. ''. $ Str2. ''. $ Str3;

Echo $ string;

Echo memaparkan huruf Latin dan huruf Cyrillic. Sekiranya salah satu daripada pembolehubah tersebut mengandungi nombor, maka apabila digabungkan, nombor ini akan ditukar ke baris yang sepadan:

$ I = 2;

$ Sum = $ i + $ i; // sekarang $ jumlah mengandungi nombor 4

Echo $ i. "+". $ I. "=". $ Sum;

Skrin akan dipaparkan: "2 + 2 = 4".

Simbol perkhidmatan

Katakan rentetan ditakrifkan menggunakan petikan berganda ($ string = "Itu sahaja"). Kemudian anda boleh menggunakan urutan kawalan dengan tenang:

  • \ N melakukan pemecahan garis;
  • \ R mengembalikan pengangkutan;
  • \ "Escapes double quotes:
    • Echo "Rentetan dengan" sebut harga berganda "; / // Rentetan dengan petikan berganda
  • \ $ Melindungi dolar;
  • \\ melepaskan backslash.

Urutan lebih banyak, semuanya boleh didapati dalam dokumentasi rasmi PHP.

Bagaimana untuk mencari kedudukan kejadian pertama substring

Katakan kita mempunyai garis yang mudah:

$ String = "Nama saya Yemelyan dan saya berusia 27 tahun";

Juga kami mempunyai dua baris dengan nama:

$ Name = "Yemelyan";

$ AnotherName = "Katherin";

Kita perlu mengetahui sama ada garisan pertama mengandungi kedua-dua nama tersebut. Untuk melakukan ini, gunakan fungsi strpos ($ str, $ search). Ia mengembalikan kedudukan carian substring $ carian, jika baris ini terkandung dalam asal, $ str. Jika tidak, fungsi itu mengembalikan nilai Boolean palsu. Sebagai contoh, strpos ($ string, $ anotherName) akan kembali palsu, dan strpos ($ string, $ name) adalah integer. Kod ini akan menjadi seperti ini (kami akan menulis pilihan apabila kedudukan dipaparkan pada skrin):

$ String = "Nama saya Yemelyan dan saya berusia 27 tahun";

$ Name = "Yemelyan";

$ AnotherName = "Katherin";

Echo strpos ($ string, $ anotherName); / / Print false

Echo strpos ($ string, $ name); / / Mencetak kedudukan kejadian pertama substring

Perhatikan bahawa penomboran baris bermula dari sifar, iaitu, dalam kes kita, baris terakhir akan mencetak nombor 11 (ruang juga dianggap).

Mencari kedudukan kejadian terakhir substrings dan perangkap

Jika fungsi strpos () mengembalikan kedudukan kejadian pertama, maka fungsi strrpos () menyerang untuk kejadian terakhir substring.

Terdapat beberapa kesulitan yang berkaitan dengan permulaan penomboran. Ini harus diambil kira: dalam PHP, bekerja dengan rentetan boleh rumit oleh keterbatasan dalam perbandingan. Jadi, lebih baik tidak menggunakan operasi perbandingan dengan penolakan: strpos ($ str, $ search)! = Palsu. Dalam mana-mana versi PHP, contoh dengan persamaan sedemikian mungkin tidak berfungsi dengan betul, kerana penomboran baris bermula dari sifar, dan dalam tafsiran logik 0 adalah palsu. Ini juga terpakai kepada fungsi strrpos ().

Bagaimana untuk mencari bilangan kejadian substring

Selalunya diperlukan untuk tidak mencari kedudukan kejadian pertama atau terakhir substring dalam rentetan, tetapi jumlah bilangan substrings. Untuk melakukan ini, gunakan fungsi substr_count (), yang memproses sekurang-kurangnya dua pembolehubah: substr_count ($ str, $ search). Mengembalikan integer. Jika anda ingin mengurangkan skop carian mengikut baris, maka dua lagi pembolehubah diluluskan kepada fungsi: permulaan dan akhir baris, masing-masing. Maksudnya, fungsi dalam kes ini dipanggil jadi: substr_count ($ str, $ search, $ start, $ end). Fungsi ini akan mencari substring $ search dalam selang dari $ start to $ end string asli $ str. Sekiranya rentetan tidak dijumpai, fungsi tersebut kembali menjadi sifar.

Bagaimana untuk menukar kes rentetan dalam PHP: contoh

Menukar daftar sering digunakan untuk membandingkan rentetan dan penyataan bersyarat. Katakan pengguna harus memasukkan nama tuhan tertinggi dalam mitologi Scandinavia. Program ini mempunyai pilihan "Satu", dengan tindak balas pengguna akan dibandingkan. Jika teks yang dimasukkan tidak sepadan dengan yang anda miliki (sebagai contoh, pengguna akan menulis "satu" atau "SATU"), program itu akan mengembalikan palsu dan tidak benar. Untuk mengelakkan ini, fungsi perubahan daftar digunakan. Ini sering digunakan jika tapak dalam PHP mempunyai tag: bukannya beratus-ratus variasi kata "peribadi" ("peribadi", "peribadi", "peribadi", dll.), Hanya terdapat satu tag dalam huruf kecil.

Fungsi strtolower () mengubah kes itu kepada yang lebih rendah. Katakan ada baris $ catName = "Fluffy". Fungsi strtolower ($ catName) mengembalikan rentetan "berbulu". Tukar daftar ke atas menggunakan fungsi strtoupper ().

Bagaimana untuk mencari panjang rentetan dalam PHP: berfungsi dengan fungsi

Ia sering diperlukan untuk mencari panjang rentetan. Sebagai contoh, dalam PHP, anda mungkin perlu bekerja dengan barisan seperti ini dalam membuat gelung. Untuk mencari rentetan, gunakan fungsi strlen (), yang mengembalikan nombor - bilangan aksara. Kita tidak boleh lupa bahawa watak terakhir akan mempunyai nombor strlen ($ str) -1, kerana penomboran bermula dari sifar.

Mendapatkan dan menggantikan substrings dalam PHP: bekerja dengan rentetan

Substring diperolehi oleh substr (), yang boleh mengambil dua atau tiga hujah: substr ($ str, $ start, $ end). Katakan kita mempunyai rentetan string $ string = "Fluffy cat", dan kita mahu mendapatkan substring dari aksara kedua ke keempat. Oleh kerana penomboran bermula dari sifar, pemboleh ubah dengan substring ini akan kelihatan seperti ini: $ newString = substr ($ string, 1, 4). Jika kita masukkan $ newString = substr ($ string, 1), kita dapat substring dari aksara kedua ke aksara terakhir (iaitu "luffy"). Kod ini sama dengan kod baris penuh menggunakan strlen (): substr ($ string, 1, strlen ($ string)).

Untuk menggantikan substring, gunakan fungsi str_replace (), yang mengambil tiga pembolehubah: str_replace ($ subStr, $ newSub, $ str). Tidak seperti banyak fungsi, str_replace () berfungsi dengan betul dengan simbol Cyrillic dan tidak mempunyai analog dengan awalan. Contoh:

$ Str = "Hari ini cuaca buruk!";

$ NewStr = str_replace ("mengerikan", "indah", $ str); // Hari ini cuaca yang indah!

Terjemahan baris ke nombor

Setiap orang yang mengkaji pengaturcaraan web lambat laun harus menterjemahkan rentetan kepada nombor. Untuk ini, dua fungsi yang serupa digunakan: intval () dan floatval (), masing-masing yang mengambil satu strata $ berubah. Dari satu sama lain, mereka hanya berbeza dalam jenis data yang dikembalikan: intval () mengembalikan integer, dan floatval () adalah nombor titik terapung.

Untuk menggunakan kedua-dua intval () dan floatval (), string perlu bermula dengan digit, dan mereka akan ditukar kepada nombor. Jika selepas nombor mana-mana set huruf pergi, mereka hanya diabaikan. Sekiranya tali bermula dengan huruf, penggunaan fungsi akan kembali sifar. Sebaik-baiknya, baris itu hanya perlu mengandungi nombor.

Menukar nombor ke rentetan

Seringkali anda perlu menterjemahkan nombor ke dalam rentetan. Sebagai contoh, jika anda mahu mengambil separuh nombor dan mengatasinya (contohnya, periksa sama ada persamaan dipenuhi: 88 x 88 + 33 x 33 = 8833). Dalam kes ini, strim fungsi () digunakan, yang mengembalikan rentetan dengan nombor. Selepas itu, dengan baris baru, anda boleh melakukan semua tindakan lain: mengubah suai, mencari berlakunya substring dan fungsi lain. Sekiranya perlu, garisan boleh diterjemahkan ke dalam nombor seperti yang dijelaskan di atas.

Dalam artikel itu, hanya sebahagian kecil daripada semua fungsi yang berkaitan dengan rentetan. Beberapa fungsi yang tidak tertulis berfungsi dengan simbol, tetapi yang besar tidak termasuk dalam bahan itu kerana kekhususannya. Untuk membiasakan fungsi ini, anda perlu pergi ke dokumentasi PHP rasmi, yang memaparkan maklumat semasa.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ms.unansea.com. Theme powered by WordPress.