Heim  >  Fragen und Antworten  >  Hauptteil

Veraltet: Die implizite Konvertierung von float xx.xxxx in int verliert an Präzision in excel_reader2.php, Zeile 922

Betriebssystem: Windows 11 PHP-Version 8.1.6

Fehlermeldung: VERALTET: Implizite Konvertierung von float 65.03846153846153 in int verliert an Präzision C:xampphtdocssatiimportexcel_reader2.php Zeile 922

public function __construct($file='',$store_extended_info=true,$outputEncoding='') {

  $this->_ole = new OLERead();
  $this->setUTFEncoder('iconv');
  if ($outputEncoding != '') { 
    $this->setOutputEncoding($outputEncoding);
  }
  for ($i=1; $i<245; $i++) {
    $name = strtolower(( (($i-1)/26>=1)?chr(($i-1)/26+64):'') . chr(($i-1)%26+65));  //line 922
    $this->colnames[$name] = $i;
    $this->colindexes[$i] = $name;
  }
  $this->store_extended_info = $store_extended_info;
  if ($file!="") {
    $this->read($file);
  }
}

Hat jemand eine Lösung für dieses Problem?

P粉654894952P粉654894952312 Tage vor580

Antworte allen(1)Ich werde antworten

  • P粉563831052

    P粉5638310522024-01-05 10:07:56

    是的,它已被弃用

    在传递给 chr() 时,您应该将计算结果转换为整数:

    strtolower(
        (
            ($i-1)/26>=1
                ? chr((int) ($i-1)/26+64)
                : ''
        )
        . chr((int) ($i-1)%26+65)
    )
    

    Antwort
    0
  • StornierenAntwort