PHP elementen samenvoegen.
Ik heb op dit moment de volgende array
$a =array("15","20","01","a","b","x");
wat ik nu wil is de 3 elemeten die voorin staan (15,20 en 01) samenvoegen naar 1 element zodat het 152001 wordt in de array zodat de array er zo uit komt te zien:
$a =array("152001","a","b","x");
Ik wilde eigenlijk vragen of hier een standaard functie voor is om dit voor elkaar te krijgen of moet ik hier een apart script voor maken?
Voor beide moet je overigens zelf een functie maken volgens mij, maar het ligt er wel aan wat je precies wilt ;-)
$a = array("15","18","13","2","3","5","6","12");
dus met print_r zou het er nu zo uitzieN;
Array ( [0] => 15 [1] => 18 [2] => 13 [3] => 2 [4] => 3 [5] => 6 [6] => 12)
moet dan uiteindelijk dit worden
$b = array("151813","2","3","5","6","12");
met print_r dus zo:
Array ( [0] => 151813 [1] => 2 [2] => 3 [3] => 5 [4] => 6 [5] => 12
dat automatisch de elementen dus ook worden opgeschoven als je snapt wat ik bedoel :)
------------------edit---------------
heb nu trouwes zelf een scriptje geschreven en gebruik gemaakt van array_unshift() en array_slice(). Maar als iemand betere oplossingen heeft zou ik dat graag horen aangezien ik dit niet mooi vind staan (hoewel het werkt :P)
Gewijzigd op 14/07/2010 10:01:03 door task b
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
$a = array("15","18","13","2","3","5","6","12");
$a = array_merge(array($a[0].$a[1].$a[2]), array_splice($a, 3, count($a)));
?>
$a = array("15","18","13","2","3","5","6","12");
$a = array_merge(array($a[0].$a[1].$a[2]), array_splice($a, 3, count($a)));
?>
EDIT: Hou ziet die van jezelf er nu uit dan?
Gewijzigd op 14/07/2010 10:03:56 door - Mark -
Gewijzigd op 14/07/2010 10:05:19 door Chris -
Code (php)
1
2
3
4
5
2
3
4
5
<?php
$temp = $a[0].$a[1].$a[2];
$b = array_slice($a, 3);
array_unshift($b,$temp);
?>
$temp = $a[0].$a[1].$a[2];
$b = array_slice($a, 3);
array_unshift($b,$temp);
?>
Op deze manier. Dus eest een nieuwe waarde aanmaken en dan gewoon een nieuwe array aanmaken met die waarde erin :P. Jouw oplossing werkt ook goed (beide geprobeerd). Maar hoopte er eigenlijk op dat een standaard functie voor in php zit :P
Niet dat ik weet, Ik zou ook niet weten waar je zoiets voor nodig zou hebben :p Dit soort probleempjes zijn wel altijd leuk om mee te spelen.
had het nodig omdat ik een csv inleest waarin een veld staat met 1 en een veld met 33. Maar het is maar 1 waarde (1.33). Dus deze moesten worden samengevoegd voordat ik het naar de DB schrijf(die er maar 1 kolom voor heeft staan).