Menghapus spasi awal dan akhir (dan karakter lain) dari string di PHP. Bagaimana cara menghilangkan spasi dari string di PHP? Php menghapus spasi tambahan di baris

Selamat malam, baru-baru ini kami sedikit menyinggung topik kata sandi dan penyimpanan amannya, yaitu kami mempelajari fungsi hashing. Hari ini kami akan melanjutkan sedikit topik kata sandi dan penyimpanannya, dan kami akan mempelajari fungsi-fungsi yang dapat Anda gunakan menghapus spasi dari awal dan akhir string. Dan ini kata sandinya dan menghapus spasi dari string, kamu memberitahuku? Pertama, fungsi ini, tentu saja, tidak berhubungan secara khusus dengan kata sandi, tetapi hanya bekerja dengan string, dan saya katakan tentang kata sandi hanya sebagai penerapannya. Oleh karena itu, Anda dapat menggunakannya dimanapun dan kapanpun Anda suka, berdasarkan situasi Anda.

Untuk apa? rapikan spasi di awal dan akhir baris? Jika Anda menentukan kata sandi di situs saat mendaftar dan entah bagaimana secara tidak sengaja menekan spasi dan tidak menyadarinya, maka kata sandi Anda, misalnya, tidak akan terdiri dari empat karakter, tetapi lima, termasuk spasi Anda.

Dan Anda tidak akan mengerti mengapa kata sandinya tidak cocok, karena hash dari string ini akan berbeda. Oleh karena itu, saya selalu menyarankan untuk memangkas spasi dalam satu baris untuk menghindari nuansa seperti itu. Sekarang kita akan beralih ke contoh dalam praktik. " 1234 " ;
$string_pass =;
$kata sandi = md5(trim($string_pass ));
$kata sandi2 = md5($string_pass ) gema
$kata sandi2 = md5($string_pass ) "
"
;
$kata sandi2 = md5($string_pass ) $kata sandi;
?>

$kata sandi2; Kami membuat variabel yang akan menjadi kata sandi kami, dan secara khusus menunjukkan spasi di awal dan di akhir baris. Selanjutnya, kita membuat variabel di mana kata sandi hash sudah disimpan, dan meneruskan baris tersebut fungsi trim, yang pertama-tama akan menghapus semua spasi yang tidak perlu, dan baru kemudian kita akan mendapatkan kata sandi yang di-hash. Dan pada variabel kedua kita tidak menggunakan fungsi untuk menghilangkan spasi dan langsung melakukan hash pada string. Kami kemudian menampilkan kedua hasil tersebut di layar browser dan melihat bahwa keduanya benar-benar berbeda, meskipun kami menggunakan string yang sama pada kedua kali. Namun karena adanya spasi, hasilnya sangat berbeda, jadi Anda harus sangat berhati-hati dalam hal ini. Dan satu hal terakhir yang harus kuberitahukan padamu. Ada dua fungsi lagi yang menghilangkan spasi di awal baris, atau di akhir baris, dan keduanya dipanggil ltrim masing-masing. Oleh karena itu, jika Anda perlu menghilangkan spasi di salah satu sisi, gunakanlah. Dan dengan ini saya mengakhiri artikel ini dan berharap Anda sukses dalam semua pekerjaan Anda.

Saat bekerja dengan teks, Anda sering kali harus memformatnya. Hal ini diperlukan untuk tampilan yang benar dan mudah dibaca. Ini diperlukan jika pengguna memasukkan beberapa informasi dan membuat kesalahan: alih-alih satu spasi, ia menunjukkan dua spasi, dan meletakkan tab di awal. Ada beberapa cara untuk menghilangkan spasi di PHP.

Memangkas()

Fungsi Trim mencari karakter tambahan di awal atau akhir string. Ini:

  • ruang biasa;
  • tabulasi;
  • karakter pemisah baris.

Itu ditulis dalam bentuk ini:

Pemangkasan string (string $str [, string $character_mask = "\t\n\r\0\x0B" ])

$str adalah string yang sedang diproses, dan $character_mask adalah karakter tambahan. $character_mask adalah atribut opsional.

Preg_ganti

Fungsi untuk mencari dan mengganti karakter menggunakan ekspresi reguler.

Campuran preg_replace (campuran $pattern , campuran $replacement , campuran $subject [, int $limit = -1 [, int &$count ]])

  1. $pattern - pola yang Anda cari.
  2. $replacement - karakter yang akan diganti.
  3. $subjek - objek yang sedang diproses.
  4. $limit - jumlah penggantian yang dilakukan.

$pattern dan $replacement dapat berupa array. Dalam hal ini penggantian dilakukan sesuai dengan indeks.

Str_ganti()

Anda dapat menghapus spasi dari string di PHP menggunakan metode str_replace(). Ini menggantikan semua kemunculan string pencarian dengan string pengganti.

Campuran str_replace (campuran $search , campuran $replace , campuran $subject [, int &$count ])

Digunakan sebagai metode preg_replace() yang disederhanakan.

  1. $search - nilai yang akan ditemukan.
  2. $replace - string yang akan diganti.
  3. $subjek - objek tempat pencarian dan penggantian dilakukan.
  4. $count menetapkan jumlah penggantian.
$bodytag = str_replace("%body%", "hitam", " "); // menugaskan: Hll Wrld f PHP $vokal = array("a", "e", "i", "o", "u", "A", "E", "I", "O ", "U"); $onlyconsonants = str_replace($vowels, "", "Halo Dunia PHP"); // tugas: Anda harus makan pizza, bir, dan es krim setiap hari $phrase = "Anda harus makan buah-buahan , sayuran, dan serat setiap hari."; $sehat = array("buah-buahan", "sayuran", "serat"); $yummy = array("pizza", "bir", "es krim"); ​​$ newphrase = str_replace($healthy, $yummy, $phrase); // menugaskan: 2 $str = str_replace("ll", "", "bagus, nona molly!", $count);

Contoh mencari dan mengganti spasi

Fungsi-fungsi ini berlaku di sebagian besar situasi, bahkan dalam situasi yang lebih kompleks.

Misalnya pengguna telah memasukkan beberapa data yang nantinya akan dicetak di layar. Untuk meningkatkan keterbacaan dan persepsi teks secara keseluruhan, informasi ini perlu diproses - hapus spasi berulang, ganti dengan spasi tunggal.

$text1 = "Teks panjang dengan spasi tambahan";

Dalam hal ini, Anda dapat melihat ada dua dan tiga spasi di antara kata-katanya. Tata cara menghilangkan spasi pada PHP adalah sebagai berikut.

1. Pertama, Anda perlu mengubah string menjadi array string menggunakan suatu fungsi.

Meledak(“ ”, $teks1)​

Satu spasi digunakan sebagai pembatas. Dengan cara ini, bagian tubuh yang bukan merupakan elemen array yang terpisah akan memiliki satu ruang lebih sedikit.

2. Hasilnya adalah deretan string berikut:

$array = ["Panjang", "bervolume", "teks", "dengan", "spasi ekstra"]​

3. Setiap elemen diproses oleh suatu fungsi:

Preg_replace("/\s+/", " ", $teks1)​

Untuk mencari satu atau lebih spasi, gunakan ekspresi reguler /\s+/. Semua kecocokan yang ditemukan diganti dengan string ' '. Pencarian dilakukan pada variabel $text1.

4. Hasilnya, kita mendapatkan string dengan jumlah spasi yang benar, yang mudah dipahami oleh pengguna.

Dalam bahasa apa pun, saat bekerja dengan string, tugas umumnya adalah menghilangkan spasi di awal dan di akhir baris. Di PHP ada tiga fungsi untuk tujuan ini: ltrim(), rtrim(), trim(). Fungsi ltrim() menghilangkan spasi di awal baris, rtrim() - di akhir baris, trim() - di awal dan akhir. Yang menarik adalah, selain spasi, fungsi-fungsi ini juga menghapus rangkaian escape baris baru, carriage return, tab, dan karakter null.

$example = "\tHai semuanya\n"; var_dump(trim($contoh)); var_dump(rtrim($contoh)); var_dump(ltrim($contoh));

Hasilnya kita mendapatkan:

String "Hai semuanya" (panjang=12) string "Hai semuanya" (panjang=14) string "Hai semuanya " (panjang=13)

Yang paling menarik adalah fungsi di atas juga dapat menghapus karakter yang ditentukan pengguna. Untuk melakukan ini, fungsi di atas harus meneruskan string yang berisi karakter yang akan dihapus sebagai argumen kedua. Misalnya:

$example = "YHai semuanya\n"; var_dump(trim($contoh, " y")); var_dump(rtrim($contoh, " y\n")); var_dump(ltrim($contoh, " yH"));

Sebagai akibat:

String "Hai semuanya" (panjang=13) string "yHai semuanya" (panjang=13) string "saya semuanya" (panjang=12)