Callback សរសេររបស់ PHP cURL ត្រូវតែត្រឡប់ចំនួនបៃដែលបានដោះស្រាយ
គោរពកិច្ចសន្យារាប់បៃ នៅពេលប្រើបំណែកឆ្លើយតបរបស់ proxy ហើយបែងចែកការបរាជ័យសរសេរក្នុងតំបន់ពីការតភ្ជាប់ proxy ដែលបរាជ័យ។
proxy ផ្ដល់ទិន្នន័យ។ Callback សរសេររបស់អ្នកត្រឡប់តម្លៃខុស។ បន្ទាប់មក libcurl បញ្ឈប់ ហើយកូដជុំវិញរាយការណ៍ “ការបរាជ័យទាញយកតាម proxy” មួយទៀត។
Callback ត្រូវរាយការណ៍ថាតើវាបានដោះស្រាយបៃដែលទទួលបានប៉ុន្មានពិតប្រាកដ។ ការត្រឡប់ចំនួនផ្សេងបង្ហាញពីការបរាជ័យ។ សម្រាប់គោលដៅសរសេរដែលបាំងដោយចេតនា បំណែកមួយអាចមើលទៅដូចនេះ៖
curl_setopt($handle, CURLOPT_PROXY, 'http://proxy.example:8080');
curl_setopt($handle, CURLOPT_WRITEFUNCTION,
function ($handle, $chunk) use ($sink) {
$written = fwrite($sink, $chunk);
return $written === false ? 0 : $written;
}
);នេះសន្មតថាកម្មវិធីដែលមានស្រាប់ជាម្ចាស់ handle និងគោលដៅសរសេរ។ ការសរសេរបរាជ័យ ឬខ្លីបញ្ឈប់ ជាជាងអះអាងដោយស្ងៀមថាបំណែកទាំងមូលត្រូវបានរក្សាទុក។ គោលដៅមិនបាំងត្រូវការការរចនាសតិបណ្ដោះអាសន្ន និងផ្អាក/បន្តសមស្រប។ បំណែកតូចមិនផ្ដល់វាទេ។
រាប់បៃ មិនមែនតួអក្សរដែលបង្ហាញ។ ទិន្នន័យអាចជាបៃគោលពីរ ឬផ្នែកនៃលំដាប់អត្ថបទពហុបៃ។ Callback មួយមិនចាំបាច់ជាបន្ទាត់មួយ ឯកសារ JSON មួយ ឬសារមួយពីសេវាកម្មទេ។
ការញែកវិភាគបន្តបន្ទាប់ត្រូវការស្ថានភាពផ្ទាល់ខ្លួនរវាង callback។ ផ្ទុយទៅវិញ ការប្រមូលបំណែកនីមួយៗរហូតដល់បញ្ចប់អាចត្រឹមត្រូវសម្រាប់ការឆ្លើយតបតូចមានកម្រិត ប៉ុន្តែមិនមែនជាគោលនយោបាយអង្គចងចាំសម្រាប់ស្ទ្រីមធំ ឬគ្មានទីបញ្ចប់ទេ។
រក្សាលទ្ធផលនៃការផ្ទេរ និងភស្តុតាងនៃការបរាជ័យ callback។ កំហុសឌីសក្នុងតំបន់ ឬការបញ្ឈប់ parser អាចកើតឡើងបន្ទាប់ពីបង្កើតផ្លូវ proxy ត្រឹមត្រូវ។ ប្រសិនបើអ្នកចង់ឈប់បន្ទាប់ពី prefix សូម សម្គាល់ការឈប់ callback ដោយចេតនានោះដោយឡែក។ ការជំនួសអាសយដ្ឋាន proxy មិនអាចជួសជុលគោលដៅដែលឈប់ទទួលទិន្នន័យបានទេ។