PDA

View Full Version : سوال: لیست کردن آرایه ها در یک متغیر



alinwp
جمعه 21 شهریور 1393, 02:21 صبح
درود یه سوال در مورد لیست کردن آرایه ها ببینید مثلا ما یه همچین آرایه ای داریم

$array = array('a', 'b', 'c', 'd');
و می خواهم یه همچین خروجی به کاربر بدیم

`a`,`b`,`c`,`d`
باید چیکار کنیم من خودم اینو نوشتم
ولی آخرش یه , اضافه میزاره

$tab1 = "";

$value = array('aa'=>'a','bb'=>'b');

while($t = current($value)){

$tab1 .= "`".key($value)."`,";

next($value);

}

echo $tab1;
و الان لنگ یه دستور هستم که بتونه حرف آخر یه رشته (رشته $tab1) رو حذف کنه؟
استادان گرامی لطفا کمک کنید

alinwp
جمعه 21 شهریور 1393, 02:36 صبح
آخیش خودم پیدا کردم دیگه رفتم بخوابم یاد اومد گفتم بگم بد نیست
این کد کامل شد

public static function insert($table = '', $value = array()/** 'name' => 'value' **/){ $tab1 = ""; $tab2 = ""; while($t = current($value)){ $tab1 .= "`".key($value)."`"; $tab2 .= "`".$t."`"; next($value); } $tab1 .= "@@@"; $taba1 = explode(",@@@",$tab1); $tab2 .= "@@@"; $taba2 = explode(",@@@",$tab2); $sql = 'INSERT INTO'.$table.'('.$taba1[0].') VALUES ('.$taba2[0].')'; mysql_query($sql); }
ابتدا به آخر رشته مد نظر خودمون یه حرف خواص اضافه میکنیم بعد با دستور explode اون تیکه , آخر رو با اون حرف خواص که میشه ,@@@ جدا میکنیم بعدشن قسمت 0 رشته جدید میشه رشته آخری منهای , آخرش
چرا کدای php من این شکلی میشه
public static function insert($table = '', $value = array()/** 'name' => 'value' **/){
$tab1 = "";
$tab2 = "";
while($t = current($value)){
$tab1 .= "`".key($value)."`";
$tab2 .= "`".$t."`";
next($value);
}
$tab1 .= "@@@";
$taba1 = explode(",@@@",$tab1);
$tab2 .= "@@@";
$taba2 = explode(",@@@",$tab2);
$sql = 'INSERT INTO'.$table.'('.$taba1[0].') VALUES ('.$taba2[0].')';
mysql_query($sql);
}

SadeghPro19
جمعه 21 شهریور 1393, 08:45 صبح
روش ساده تر و بهینه تر هم کدهای زیر میتونه باشه و لازم نیست این همه کد بنویسید...:

/** 'name' => 'value' **/
public static function insert($table = '', $value = array()){
$DataKeys = array_keys($value);
$DataValues = array_values($value);
$stringFields = implode($DataKeys, ', ');
$stringValues = implode($DataValues, ', ');
$sql = 'INSERT INTO '.$table.' ('.$stringFields.') VALUES ('.$stringValues.')';
mysql_query($sql);
}

bagherok
جمعه 21 شهریور 1393, 09:31 صبح
درود یه سوال در مورد لیست کردن آرایه ها ببینید مثلا ما یه همچین آرایه ای داریم

$array = array('a', 'b', 'c', 'd');
و می خواهم یه همچین خروجی به کاربر بدیم

`a`,`b`,`c`,`d`


echo "`". implode("','",array('a','b','c','d'))."`";//Output:`a`,`b`,`c`,`d`