licass
            (L R M D)
          
          
          
              
              
          1
          
         
        
          need to put in array the first line(header) of uploaded csv.
this is my code
$model= new ImportForm;
        if (isset($_POST['ImportForm'])) {
            $arr= array();
             
           $arr=  str_getcsv( fgets(CUploadedFile::getInstance($model,'csv')),0,';');
fgets() expects parameter 1 to be resource, object given
I need to compare the header to the atributeLabels of the model
and validate
         
        
          
        
           
           
           
         
         
            
            
          
       
      
        
        
          You have to read entire file, so use file_get_contents instead fgets (that read a line at time).
Then pass "tempName" attribute to file_get_contents, that contains temporary path of file you have uplaoded.
Should be:
$model= new ImportForm;
        if (isset($_POST['ImportForm'])) {
            $arr= array();
             
           $arr=  str_getcsv( file_get_contents(CUploadedFile::getInstance($model,'csv')->tempName),0,';');
         
        
        
           
           
           
         
         
            
            
          
       
      
        
          
          
            licass
            (L R M D)
          
          
          
              
              
          3
          
         
        
          
thanks.
but how to get the first line ?
         
        
        
           
           
           
         
         
            
            
          
       
      
        
        
          Sorry, then for only the first line use fgets:
$handle = fopen(CUploadedFile::getInstance($model,'csv')->tempName, "r");
if ($handle) {
   $firstLine = fgets($handle, 4096);
   $arr=  str_getcsv( $firstLine,0,';');
   fclose($handle);
}