Kaedah manakah yang lebih pantas untuk php mengekstrak data daripada mysql?
巴扎黑
巴扎黑 2017-05-18 10:44:34
0
3
623

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>

巴扎黑
巴扎黑

membalas semua(3)
洪涛

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

洪涛

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.

淡淡烟草味

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.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan