Rentetan jenis data PHP
String adalah semua watak kita yang kelihatan dan tidak kelihatan, yang merupakan apa yang kita katakan dalam kehidupan seharian, iaitu, apa yang saya ingin katakan: "Xiao Ming sangat kacak" atau "Kakak Feng, saya sayang kamu!" . Rentetan adalah semua watak yang orang boleh lihat yang saya ingin ungkapkan.
Sebagai contoh, anda boleh melihat watak-watak:
Saya ingin menjadi anda dalam kisah dongeng, putera yang anda cintai, dengan rumah, sebuah kereta dan wang. <html><title></title></html> ^@@@#@ nama saya xiaoshenyang
Teks, tag HTML, aksara khas dan bahasa Inggeris, dsb. , kita semua menganggapnya sebagai rentetan.
Nota: Watak halimunan tidak akan diterangkan buat masa ini, kerana ia tidak boleh diwakili dalam teks Cuma beri perhatian kepadanya secara beransur-ansur dalam eksperimen berikut. Untuk gambaran yang lebih jelas, anda juga boleh menonton video pada rentetan yang dihasilkan oleh Akademi PHP yang mengiringi buku ini.
Terdapat tiga cara untuk mengisytiharkan rentetan dalam bahasa PHP:
1. Gunakan petikan tunggal untuk mengisytiharkan
2. Gunakan petikan berganda untuk mengisytiharkan
3 . Gunakan pengisytiharan pembatas aksara (digunakan apabila rentetan yang sangat besar perlu dimasukkan)
1. Petikan tunggal Bahasa Inggeris, bungkus rentetan <?php
//聲明字符串變量$zhifu
$zhifu = '曾經(jīng)有操蛋的愛情擺在我面前,我珍惜了。當(dāng)我得到的時候才感到后悔莫及。如果非要在這段愛情前面加上一段三個字,我愿意說三個字:滾犢子';
//你可以放XAMPP指定的目錄下,新建一個文件叫str.php。然后訪問一下http://127.0.0.1/str.php試試。會不會顯示這句話。
echo $zhifu;
?>
2. Petikan dua kali mengisytiharkan rentetan
Tambah petikan berganda pada kedua-dua belah rentetan. <?php
//聲明字符串變量$str
$str = "如果非要在滾犢子前面加上一個時間的話我愿意是馬上。";
echo $str;
?>
3. Pengisytiharan aksara
1. Tulis tiga tanda kurang (<<<) selepas tanda sama selepas pembolehubah . 2). Kemudian tulis aksara selepas <<< Seperti contoh berikut: ABC3). Kemudian tukar baris dan tulis mana-mana aksara yang anda mahu 4). Pada permulaan baris, tulis aksara selepas <<< Seperti dalam contoh berikut: ABC;
<?php $dingjie = <<<ABC 如果 非要在這個滾犢子 前 面<br /> 加上一段 <i>距離的話</i> 我想說:<h1>思想有多遠(yuǎn),你就跟我滾多遠(yuǎn)</h1> ABC; ?>
Apakah perbezaan antara petikan berganda dan petikan tunggal?
[Mata pengetahuan penting] Antara soalan temuduga PHP, soalan temuduga berkemungkinan tinggi (disyorkan untuk menghafal dan mencuba lebih daripada tiga kali)
1. Petikan dua menghuraikan pembolehubah, tetapi petikan tunggal tidak menghuraikan pembolehubah. 2. Masukkan pembolehubah di dalam petikan berganda Jika terdapat aksara Inggeris atau Cina di belakang pembolehubah, ia akan menggabungkan aksara dan pembolehubah itu bersama-sama dan menganggapnya sebagai pembolehubah keseluruhan. Pastikan untuk mengasingkan aksara khas, seperti ruang, selepas pembolehubah.
3. Jika anda memasukkan pembolehubah di dalam petikan berganda dan tidak mahu mempunyai ruang di belakangnya, anda boleh membungkus pembolehubah itu dalam pendakap.
4. Petikan dua menghuraikan aksara melarikan diri, petikan tunggal tidak menghuraikan aksara melarikan diri. Walau bagaimanapun, petikan tunggal boleh menghuraikan ' dan
5. Petikan tunggal lebih cekap daripada petikan berganda, gunakan petikan tunggal
sebanyak mungkin6. Nombor berganda dan petikan tunggal boleh dimasukkan ke dalam satu sama lain! ! ! Sisipkan petikan tunggal antara petikan berganda, masukkan pembolehubah antara petikan tunggal dan pembolehubah akan dihuraikan.
7. Gam penyambung tali ajaib - (.) titik, digunakan untuk menyambung tali.
8. Kami menganggap rentetan pengisytiharan pembatas sebagai fungsi yang sama seperti petikan berganda.
Contoh eksperimen
1. Petikan dua menghurai pembolehubah, tetapi petikan tunggal tidak menghuraikan pembolehubah
<?php //聲明變量$shouji $shouji = '為了蘋果手機(jī)去賣腎'; //在雙引號中放$shouji 然后echo 一下是什么效果呢? $str = "$shouji 會不會顯示呢?"; //輸入$str試試 echo $str; ?>
Bukanya dalam penyemak imbas, dan hasil yang dijalankan adalah seperti berikut:
Melalui contoh di atas, kami dapati. Pembolehubah antara petikan berganda sudah cukup untuk pelaksanaan dan paparan Mari cuba tukar petikan berganda pada kedua-dua belah rentetan $str kepada petikan tunggal dan lihat hasil pelaksanaan sekali lagi:
<. ??>
Petikan berganda perlu menghuraikan pembolehubah, jadi petikan berganda tidak cekap seperti petikan tunggal. Untuk kecekapan yang lebih tinggi, kami biasanya menggunakan petikan tunggal.
2. Masukkan pembolehubah di dalam petikan berganda Jika terdapat aksara Inggeris atau Cina di belakang pembolehubah, ia akan menggabungkan aksara dan pembolehubah dan menganggapnya sebagai keseluruhan pembolehubah. Ia boleh dipisahkan oleh aksara khas seperti ruang.
<?php $php = 'php中文網(wǎng)'; $str = "$phpaaaa"; //你會發(fā)現(xiàn)輸出$str,什么都沒有在頁面中顯示 echo $str; ?>Walau bagaimanapun, dalam rentetan yang diisytiharkan oleh $str, kami menambah $huaqiangu diikuti dengan ruang dan kemudian aaaa Kodnya adalah seperti berikut:
<?php $php = 'php中文網(wǎng)'; //中間加了空格喲 $str = "$php aaaa"; echo $str; ?>Semua orang mendapati bahawa hasilnya. dipaparkan semasa pelaksanaan tidak sama Tiada lagi halaman kosong, tetapi terdapat kandungan dalam halaman ini. Seperti berikut:
<?php $php = 'php中文網(wǎng)'; //中間加了空格喲 $str = "$php!aaaa"; echo $str; ?>Semua orang membuka halaman sekali dan laksanakan kod sekali untuk melihat sama ada keputusan berubah kepada :laman web php Cina!aaaa Oleh itu, perkara kedua kami terbukti. 3 Jika anda memasukkan pembolehubah dalam petikan berganda dan tidak mahu ruang di belakangnya, anda boleh membungkus pembolehubah itu dengan pendakap. Kemudian, bagaimana jika saya tidak mahu ruang atau simbol khas pada penghujungnya, dan saya mahu terus memaparkan pembolehubah $huaqiangu? - Penyelesaian kami ialah membungkus pembolehubah dalam pendakap kerinting. Kodnya adalah seperti berikut:
<?php $php = 'php中文網(wǎng)'; //中間加了空格喲 $str = "{$php}aaaa"; echo $str; ?>Akibatnya, anda akan mendapati bahawa tiada simbol atau ruang khas di belakang Hua Qiangu, yang mencapai hasil paparan yang kami inginkan Kesan demonstrasi adalah seperti berikut:
4. Petikan berganda menghuraikan aksara melarikan diri, petikan tunggal tidak menghuraikan aksara melarikan diri. Walau bagaimanapun, petikan tunggal boleh menghuraikan ' dan
Rentetan keempat lebih sukar untuk diperhatikan, tetapi yang paling biasa digunakan ialah:
n Masukkan
t. Lekukan
Mari kita fahami dahulu apa itu n dan t melalui eksperimen.
<?php //聲明一個字符串,記住是雙引號 $string = "每天來PHP中文網(wǎng)\n給夢想\t一個機(jī)會"; echo $string; ?>
Ada satu perkara yang perlu diperhatikan semasa melakukan eksperimen ini Kesannya tidak dapat dilihat dengan memaparkan halaman web, seperti berikut:
Mengapa saya tidak dapat melihatnya? Apakah yang dimaksudkan dengan n dan t? ——Oleh kerana anda tidak klik kanan untuk melihat kod sumber. Jom klik dan lihat kesannya.
Langkah 1: Paparkan kod sumber halaman web
Langkah 2: Lihat hasil yang dipaparkan oleh kod sumber HTML:
Mari kita bandingkan rentetan pembolehubah :
$string = "Datang ke tapak web PHP Cina setiap hari untuk memberi peluang impian anda";
n Di sebalik Akademi PHP, hasilnya dipaparkan dalam kod sumber Ia mempunyai kesan yang sama seperti menekan kekunci Enter.
itu antara memberi impian dan peluang. Hasil yang dipaparkan adalah kesan beberapa ruang. t adalah bersamaan dengan kesan menekan kekunci tab pada komputer kita.
Walau bagaimanapun, kami juga melaksanakan kod di atas, tetapi menukar petikan berganda $string kepada petikan tunggal:
<?php //聲明一個字符串,記住是雙引號 $string = '每天來PHP中文網(wǎng)\n給夢想\t一個機(jī)會'; echo $string; ?>
Laksanakan dan tonton sekali Lihat kesannya:
Anda akan mendapati bahawa t dan n antara petikan tunggal dipaparkan secara langsung, bukannya bertukar menjadi selepas menekan kekunci Enter dan kekunci Tab sekali kesan.
Jadi:
Petikan berganda melaksanakan aksara melarikan diri manakala petikan tunggal tidak.
5. Escape characters (penggunaan garis miring ke belakang)
Jika kita mengisytiharkan pembolehubah $beizi, Bagaimana jika kita ingin menambah petikan berganda antara petikan berganda yang diisytiharkan dalam $beizi untuk memaparkan output?
<?php //要在$beizi的字符串中顯示一個雙引號怎么辦? $beizi = "多于絕大多數(shù)的人出生就是杯具,但是"我們在不斷的讓人生變?yōu)橄矂?quot;; echo $beizi; ?>
Jika kod ditulis seperti di atas, kod akan melaporkan ralat. Keputusan ralat adalah seperti berikut:
Kerana rentetan: "Lebih daripada kebanyakan orang dilahirkan kurang upaya, tetapi "kami sentiasa menjadikan hidup sebagai komedi" mesti ditulis di antara petikan berganda. Dan antara dua kali ganda petikan Terdapat juga tanda petikan berganda Ini bermakna penyataan rentetan itu berakhir pada "tetapi".
Jawapan: Kami perlu mengalih keluar maksud asal tanda petikan berganda dan menambah (slash ke belakang, istilah profesional untuk komputer ialah watak melarikan diri).
<?php //要在$beizi的字符串中顯示一個雙引號怎么辦? $beizi = "多于絕大多數(shù)的人出生就是杯具,但是\"我們在不斷的讓人生變?yōu)橄矂?quot;; echo $beizi; ?>
Anda boleh melaksanakan kod di atas sekali lagi dan mendapati bahawa ralat tidak lagi dilaporkan. Dengan cara yang sama, apabila anda ingin memasukkan petikan tunggal ke dalam petikan tunggal untuk memaparkannya, anda juga boleh menambah (slash ke belakang, aksara melarikan diri) di hadapan petikan tunggal dalam rentetan yang diisytiharkan oleh petikan tunggal untuk menukar maksud petikan tunggal (julat aksara terhad) dialih keluar.
<?php //要在$beizi的字符串中顯示一個雙引號怎么辦? $shengyang = 'i\'m xiaoshengyang'; echo $shengyang; ?>
6. Nombor berganda dan petikan tunggal boleh dimasukkan ke dalam satu sama lain! ! ! Masukkan petikan tunggal antara petikan berganda, masukkan pembolehubah antara petikan tunggal dan pembolehubah akan dihuraikan.
Kodnya adalah seperti berikut:
<?php $legend = '猛虎'; $NoAlike = "心有'$legend',細(xì)嗅薔薇"; echo $NoAlike; ?>
Hasil pelaksanaan adalah seperti berikut:
7. Gam penyambung tali ajaib - (.) titik, digunakan untuk menyambung tali.
<?php $php = 'PHP中文網(wǎng)'; //中間加了空格喲 $str = "{$php}aaaa"; echo $str; ?>
Kod di atas ialah, kita pernah berkata petikan berganda boleh menghuraikan pembolehubah, terdapat masalah:
Kecekapan tidak setinggi tulen petikan tunggal
Jadi soalan 1: Saya ingin menukar kepada cara yang paling berkesan, apakah yang perlu saya lakukan?
Soalan 2: Saya mempunyai berbilang rentetan, apakah yang perlu saya lakukan jika saya mahu menyambungnya?
Kemudian, kita perlu menggunakan gam ajaib: (.) ????titik untuk menyambung tali.
<?php $shixi = '大學(xué)4年要好好學(xué)習(xí)<br />'; $buran = '不然連實習(xí)的機(jī)會都沒有<br />'; $mimang = '把別人用來迷茫的時間拿到PHP中文網(wǎng)<br />'; $xuexi = '學(xué)習(xí)PHP<br />'; //我們可以把字符串全部拼接起來。 echo $shixi . $buran . $mimang . $xuexi; ?> 因此,剛剛的問題一的代碼我們可以改為: <?php $php = 'PHP中文網(wǎng)'; //中間加了空格喲 $str = $php . 'aaaa'; echo $str; ?>
8. Kami menganggap rentetan pengisytiharan pembatas sebagai fungsi yang sama seperti petikan berganda.
<?php $weilai = '努力才有未來'; $mimang = '迷茫的原因是沒有目標(biāo)'; $dingjie = <<<ABC 如果 $weilai 非要\t在這"個滾"犢子 前 '$mimang' 面<br /> 加上\n一段 <i>距離的話</i> 我想說:<h1>思想有多遠(yuǎn),你就跟我滾多遠(yuǎn)</h1> ABC; echo $dingjie; ?>
Anda boleh melaksanakannya dan mendapati bahawa $weilai, $mimang, dan tn semuanya boleh dilaksanakan, dan petikan berganda dan petikan tunggal boleh dipaparkan. Ini adalah ciri pembatas.
Biar saya nyatakan sekali lagi: Setiap item dalam perisytiharan rentetan mesti diingat, ia adalah perkara biasa. Dan kebarangkalian soalan temuduga muncul adalah sangat tinggi!
Watak tidak kelihatan: terutamanya beberapa simbol khas yang ditentukan oleh komputer. Contohnya: pemulangan pengangkutan (n), inden (t), dsb.
Petikan berganda melaksanakan pembolehubah, jadi