• 26-12-2013, 23:54:11
    #1
    Reveloper
    Merhaba,

    aşağıdakini preg_match all ile bölmek istiyorum ancak for döngüsünü halledemedim:

    $veri={Renk:Siyah|Yeşil|Kırmızı}{Beden:S|M|L|XL}{D egisken:a|b|c};


    İstediğim

    <select name="Renk">
    	<option>Siyah</option>
    	<option>Yeşil</option>
    	<option>Kırmızı</option>
    </select>
    
    <select name="Beden">
    	<option>S</option>
    	<option>M</option>
    	<option>L</option>
    	<option>XL</option>
    </select>
    
    <select name="Degisken">
    	<option>a</option>
    	<option>b</option>
    	<option>c</option>
    </select>
    ancak değerler sürekli değişken yani bağımlı olmasın içeriğe? kaç tane {} varsa o kadar bassın bir türlü beceremedim
  • 27-12-2013, 02:30:57
    #2
    Üyeliği durduruldu
    				function als($nerdens, $nereyes, $Veris){
    													preg_match_all('|'.$nerdens.'(.*?)'.$nereyes.'|si', $Veris, $asds);
    													$sonucs=$asds[1][0];
    													return $sonucs;
    				}											
    				
    				function bir($nerdens){
    						$pp=explode('|', $nerdens);
    						$da="";
    					foreach($pp as $be){
    					$da.='<option value="'.$be.'">'.$be.'</option>
    					';
    					}
    					return $da;	
    				}
    
    
    											
    	function CEvir($veri){
    	$sonuc="";
    preg_match_all('|{(.*?)}|si', $veri, $eee);
    	$say=count($eee[1]);
    	for($i=0; $i < $say; $i++){
    		$rr=$eee[0][$i];
    	$ll=als('{', ':', $rr);
    	$ll2=als(':', '}', $rr);
    	$pp=bir($ll2);
    $sonuc.=<<<HTML
    <select name="$ll" id="">
    		$pp
    </select>
    HTML;
    	}
    	return $sonuc;
    	}
    
    
    $veri='{Renk:Siyah|Yeşil|Kırmızı}{Beden:S|M|L|XL}{Degisken:a|b|c}';
    echo CEvir($veri);
  • 27-12-2013, 11:56:14
    #3
    Reveloper
    HalisTurk adlı üyeden alıntı: mesajı görüntüle
    				function als($nerdens, $nereyes, $Veris){
    													preg_match_all('|'.$nerdens.'(.*?)'.$nereyes.'|si', $Veris, $asds);
    													$sonucs=$asds[1][0];
    													return $sonucs;
    				}											
    				
    				function bir($nerdens){
    						$pp=explode('|', $nerdens);
    						$da="";
    					foreach($pp as $be){
    					$da.='<option value="'.$be.'">'.$be.'</option>
    					';
    					}
    					return $da;	
    				}
    
    
    											
    	function CEvir($veri){
    	$sonuc="";
    preg_match_all('|{(.*?)}|si', $veri, $eee);
    	$say=count($eee[1]);
    	for($i=0; $i < $say; $i++){
    		$rr=$eee[0][$i];
    	$ll=als('{', ':', $rr);
    	$ll2=als(':', '}', $rr);
    	$pp=bir($ll2);
    $sonuc.=<<<HTML
    <select name="$ll" id="">
    		$pp
    </select>
    HTML;
    	}
    	return $sonuc;
    	}
    
    
    $veri='{Renk:Siyah|Yeşil|Kırmızı}{Beden:S|M|L|XL}{Degisken:a|b|c}';
    echo CEvir($veri);
    hay Allah razı olsun