explode
और implode
अपेक्षा के अनुरूप काम कर रहे हैं। पहले का उपयोग एक स्ट्रिंग को विभाजित करने और टुकड़ों के साथ एक सरणी वापस करने के लिए किया जाता है उदा।
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2
इसलिए आपको यह मिलता है:ऐरे ( [0] => ऐरे ( [0] => इनसोल प्रीमियम शोर 30) [1] => ऐरे ( [0] => जी डायबिटिक प्रीमियम क्लोज्ड सैंडल ब्लैक साइज 09)) जब आप प्रिंट $prdtarray (echo print_r($prdtarray);
) हर बार जब आप $prdtarray[] = explode(",", $row1->product_name);
पर कॉल करते हैं आप एक तत्व के साथ एक नई सरणी बना रहे हैं (केवल एक तत्व क्योंकि $row1->product_name
इसमें कोई ","") शामिल नहीं है और इसे $prdtarray
. में जोड़ना है ।
implode
सरणी तत्वों को एक स्ट्रिंग के साथ जोड़ने के लिए प्रयोग किया जाता है जैसे
$array = array('lastname', 'email', 'phone');
$comma_separated = implode(",", $array);
echo $comma_separated; // lastname,email,phone
आपके कोड में चूंकि आपके पास $prdtarray
. के अंदर दो सरणियाँ हैं $product
. का परिणाम है
Array,Array
तो, आप $row1->product_name
. को सेव कर सकते हैं किसी सरणी में मान और फिर implode
. का उपयोग करें अल्पविराम से अलग किए गए मान परिणाम बनाने के लिए। कोड इस तरह दिखता है:
$this->db->select("product_name")
->from('sale_items')
->where('sale_items.sale_id',4221);
$q1 = $this->db->get();
if ($q1->num_rows() > 0) {
foreach (($q1->result()) as $row1) {
$prdtarray[] = $row1->product_name;
}
$product=implode(',',$prdtarray);
echo $product ; // Insole Premium Shore 30,G Diabetic Premium closed Sandal Black size 09