सरणी मान $rtoclass
. के लिए प्रारंभ किए गए कक्षा के बाहर चर, फिर एक AdvancedExport
. को पास किया गया इसकी विधि के माध्यम से वस्तु - $obj->set_arr_needed( $rtoclass );
पर $obj->fputToFile()
कॉल, आवश्यक सरणी स्वचालित रूप से इसके अंदर चर $arr_needed_in
के माध्यम से उपयोग के लिए उपलब्ध होगी ।
कोशिश करें:
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "dbname";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT codice_target FROM customer";
$result = $conn->query($sql);
$rtoclass = array();
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id_customer"]. " - Codice target: " . $row["codice_target"]."<br>";
$rtoclass[] = $row;
}
} else {
echo "0 results";
}
$obj = new AdvancedExport();
$obj->set_arr_needed( $rtoclass );
$conn->close();
कक्षा के लिए:
class AdvancedExport extends Module
{
//other methods here...
private $arr_needed = array();
public function set_arr_needed( $arr ) {
$this->arr_needed = $arr;
}
public function get_arr_needed() {
return $this->arr_needed;
}
public function fputToFile($file, $allexportfields, $object, $ae)
{
$arr_needed_in = $this->get_arr_needed(); // array needed already inside..
if($allexportfields && $file && $object && $ae)
{
//one ready for export product
$readyForExport = array();
//put in correct sort order
foreach ($allexportfields as $value)
{
$object = $this->processDecimalSettings($object, $ae, $value);
$readyForExport[$value] = iconv("UTF-8", $ae->charset, $object[$value]);
}
// need to put mysql query result here inside $readyForExport['codice_target'];
$this->counter[$readyForExport['id_order']] = (!empty($this->counter[$readyForExport['id_order']])) ? ++$this->counter[$readyForExport['id_order']] : 1; // try here
$readyForExport['orderLine'] = $this->counter[$readyForExport['id_order']]; // and try here
//print_r('The id_order is added: ' . $readyForExport['orderLine']); // see if it is added
//echo '<pre>' . var_dump($readyForExport) . '</pre>';
// modifiche === Dario === prezzo
$newPrice = substr($readyForExport['product_price'], 0, strpos($readyForExport['product_price'], "."));
$readyForExport['product_price'] = $newPrice;
// === data
$newDateAdd = new DateTime($readyForExport['date_add']);
$readyForExport['date_add'] = $newDateAdd->format('d/m/Y');
// aggiungo 21 giorni - 3 settimane - alla data di acquisto
$date_mod = clone $newDateAdd;
$date_mod->add(new DateInterval('P21D'));
$readyForExport['delivery_date'] = $date_mod->format('d/m/Y');
// === data invoice
$newDateInvoice = clone $newDateAdd;
$readyForExport['invoice_date'] = $newDateAdd->format('d/m/Y');
//scambio l'id customer con il codice_target
//$readyForExport['codice_target'] = 8989;
$textTarget = (string)$readyForExport['codice_target'];
$readyForExport['id_customer'] = $textTarget;
// aggiungo gli zeri davanti al customer id
$id_count = strlen($readyForExport['id_customer']);
if ($id_count == 1) {
$newCustomer = "0000000".$readyForExport['id_customer'];
$readyForExport['id_customer'] = $newCustomer;
}elseif ($id_count == 2) {
$newCustomer = "000000".$readyForExport['id_customer'];
$readyForExport['id_customer'] = $newCustomer;
}elseif ($id_count == 3) {
$newCustomer = "00000".$readyForExport['id_customer'];
$readyForExport['id_customer'] = $newCustomer;
}elseif ($id_count == 4) {
$newCustomer = "0000".$readyForExport['id_customer'];
$readyForExport['id_customer'] = $newCustomer;
}elseif ($id_count == 5) {
$newCustomer = "000".$readyForExport['id_customer'];
$readyForExport['id_customer'] = $newCustomer;
}elseif ($id_count == 6) {
$newCustomer = "00".$readyForExport['id_customer'];
$readyForExport['id_customer'] = $newCustomer;
}
// elaboro lo SKU
$textSku = (string)$readyForExport['product_name'];
$newSku_1 = $readyForExport['product_name'];
$newSku_1 = substr($newSku_1,0,4);
$newSku_2 = "/".substr($textSku,-4,4);
$newSku_tot = $newSku_1.$newSku_2;
$newSku_tot = str_replace(' ', '', $newSku_tot);
$newSku_tot = str_replace('-', '', $newSku_tot);
$newSku_tot = str_replace('co', '', $newSku_tot);
$newSku_tot = str_replace('e', '', $newSku_tot);
$newSku_tot = str_replace('r', '', $newSku_tot);
$readyForExport['product_name'] = $newSku_tot;
// aggiungo un campo fisso
$readyForExport['causale'] = "NR";
// aggiungo un campo fisso
$readyForExport['ORCL'] = "ORCL";
//$readyForExport['G'] = "";
$readyForExport['J'] = "";
$readyForExport['K'] = "";
$readyForExport['L'] = "";
$readyForExport['M'] = "";
$readyForExport['N'] = "";
$readyForExport['P'] = "";
$readyForExport['Q'] = "";
$readyForExport['R'] = "30";
$index_arr=array("id_customer","date_add","ORCL","product_name","causale","product_quantity","product_price","delivery_date","id_order","J","K","L","M","N","orderLine","P","Q","R");
//riordino i campi in base a come li dispongo nella variabile $index_arr
$arr_t=array();
foreach($index_arr as $i=>$v) {
foreach($readyForExport as $k=>$b) {
if ($k==$v) $arr_t[$k]=$b;
}
}
$readyForExport=$arr_t;
//write into csv line by line
fputcsv($file, $readyForExport, $ae->delimiter, $ae->separator);
}
}
}
'; // संशोधित ===डारियो ===प्रीज़ो $ newPrice =सबस्ट्र ($ readyForExport ['product_price'], 0, स्ट्रॉप्स ($ readyForExport ['product_price'], "।")); $readyForExport['product_price'] =$newPrice; // ===डेटा $ newDateAdd =नया दिनांक समय ($ readyForExport ['date_add']); $readyForExport['date_add'] =$newDateAdd->format('d/m/Y'); // aggiungo 21 giorni - 3 settimane - alla data di acquisto $date_mod =clone $newDateAdd; $ date_mod-> जोड़ें (नई तिथि अंतराल ('P21D')); $readyForExport['delivery_date'] =$date_mod->format('d/m/Y'); // ===डेटा चालान $newDateInvoice =क्लोन $newDateAdd; $readyForExport['invoice_date'] =$newDateAdd->format('d/m/Y'); //scambio l'id ग्राहक il codice_target //$readyForExport['codice_target'] =8989; $textTarget =(स्ट्रिंग)$तैयारफॉरएक्सपोर्ट ['codice_target']; $readyForExport['id_customer'] =$textTarget; // एग्जिउंगो ग्लि ज़ीरी दावंती अल ग्राहक आईडी $id_count =strlen($readyForExport['id_customer']); अगर ($id_count ==1) { $newCustomer ="0000000"।$readyForExport['id_customer']; $readyForExport['id_customer'] =$newCustomer; }elseif ($id_count ==2) { $newCustomer ="000000".$readyForExport['id_customer']; $readyForExport['id_customer'] =$newCustomer; }elseif ($id_count ==3) { $newCustomer ="00000"।$readyForExport['id_customer']; $readyForExport['id_customer'] =$newCustomer; }elseif ($id_count ==4) { $newCustomer ="0000"।$readyForExport['id_customer']; $readyForExport['id_customer'] =$newCustomer; }elseif ($id_count ==5) { $newCustomer ="000".$readyForExport['id_customer']; $readyForExport['id_customer'] =$newCustomer; }elseif ($id_count ==6) { $newCustomer ="00".$readyForExport['id_customer']; $readyForExport['id_customer'] =$newCustomer; } // विस्तृत करें SKU $textSku =(स्ट्रिंग)$तैयारForExport['product_name']; $newSku_1 =$readyForExport['product_name']; $newSku_1 =सबस्ट्र ($newSku_1,0,4); $newSku_2 ="/".substr($textSku,-4,4); $newSku_tot =$newSku_1.$newSku_2; $newSku_tot =str_replace(' ','', $newSku_tot); $newSku_tot =str_replace('-', '', $newSku_tot); $newSku_tot =str_replace('co', '', $newSku_tot); $newSku_tot =str_replace('e', '', $newSku_tot); $newSku_tot =str_replace('r', '', $newSku_tot); $readyForExport['product_name'] =$newSku_tot; // एग्जिउंगो अन कैंपो फिसो $ रेडीफॉरएक्सपोर्ट ['कारण'] ="एनआर"; // एग्जिउंगो अन कैंपो फिसो $ रेडीफॉरएक्सपोर्ट ['ओआरसीएल'] ="ओआरसीएल"; //$ तैयार फॉरएक्सपोर्ट ['जी'] =""; $readyForExport['J'] =""; $readyForExport['K'] =""; $readyForExport['L'] =""; $readyForExport['M'] =""; $readyForExport ['एन'] =""; $readyForExport ['पी'] =""; $readyForExport['Q'] =""; $readyForExport['R'] ="30"; $index_arr=array("id_customer",,"date_add",,"ORCL",,"product_name",,"Casale",,"product_quantity",,"product_price",,"delivery_date",,"id_order",,"J","K"," एल", "एम", "एन", "ऑर्डरलाइन", "पी", "क्यू", "आर"); //रियोर्डिनो आई कैंपी इन बेस ए कम ली डिस्पोंगो नेला वेरिएबिल $index_arr $arr_t=array(); foreach($index_arr as $i=>$v) { foreach($readyForExport as $k=>$b) { if ($k==$v) $arr_t[$k]=$b; } } $readyForExport=$arr_t; // लाइन fputcsv द्वारा csv लाइन में लिखें ($file, $readyForExport, $ae->delimiter, $ae->separator); } }}