Rumah > Soal Jawab > teks badan
1. Sekeping data, iaitu hanya terdapat satu baris data, dan artikel medan dalam baris data ini mengandungi 400,000 perkataan, dipisahkan dengan koma (,)
2. Terdapat 400,000 keping data iaitu 400,000 baris Terdapat satu perkataan dalam artikel medan setiap baris
Jika pilihan 1 cepat, bagaimana kita boleh mengekstraknya secara berasingan dalam gelung, kemudian menggabungkannya (dipisahkan dengan koma), dan menggabungkannya menjadi 400,000 gelung?<a href="分割后的单独一个单词">分割后的单独一个单词</a>
PHP中文网2017-05-18 10:46:34
Saya rasa pilihan 2 sepatutnya lebih pantas.
Dapatkan 1000 keping data dahulu:
SELECT `article` FROM `table` ORDER BY id DESC LIMIT 0,1000
Proses 1000 keping data satu demi satu:
foreach ($list as $key => $value) {
$link = '<a href="'.$value['article'].'">'.$value['article'].'</a>';
....
}
Proses 1000 item seterusnya
PHP中文网2017-05-18 10:46:34
Dari segi pertanyaan sahaja, yang pertama pasti lebih pantas, tetapi satu medan menyimpan 40,000 perkataan (satu perkataan dikira sebagai 7 huruf - termasuk koma), iaitu hampir 3,000,000 huruf, dan kira-kira 3M data. Walau bagaimanapun, selepas menyoalnya, nampaknya tidak boleh dipercayai untuk memotong medan yang begitu panjang.
淡淡烟草味2017-05-18 10:46:34
Jika ia adalah perniagaan mudah dengan menyenaraikan 400,000 perkataan pada halaman, saya rasa kaedah pertama lebih cepat
Sebab:
1. Pertanyaan
Kaedah 1. Imbas satu baris untuk mendapatkan rekod Kaedah 2 memerlukan pengimbasan banyak baris, dan masa yang dihabiskan adalah jelas (semakin besar jadual, lebih jelas).
Kaedah proses 1 ini jauh lebih baik daripada kaedah 2
2 Output
Kaedah 1 perlu dibahagikan secara bebas, yang tidak menjadi masalah sama sekali untuk PHP. Kemudian kedua-duanya perlu cache output.
Secara amnya, kaedah 1 mempunyai lebih sedikit overhed daripada kaedah 2.