original_string: public function setCell($cell, $value, $type = "auto")
      {
          if ($type == "auto") {
              $type = \gettype($value);
          }
  
          if (\is_array($cell)) {
              $parts["row"] = $cell[0];
              $parts["col"] = $cell[1];
          } else {
              $parts = $this->refToArray($cell);
          }
  
          if (!\is_array($parts)) {
              \trigger_error("Cell reference should be in the format A1 or array(0,0).", E_USER_ERROR);
              return false;
          }
  
          $row = $parts["row"];
          $col = $parts["col"];
  
          switch ($type) {
  
              case "string" :
  
                  /**
                   * @todo  it would be nice if we were able to keep that
                   * characters UTF-8 or unicode
                   */
                  $value = \mb_convert_encoding($value, "Windows-1252", "UTF-8");
                  $length = \mb_strlen($value, "Windows-1252");
  
                  if ($length > 255) {
                      \trigger_error("String '$value' is too long. "
                          ."Please keep to a max of 255 characters.",
                          E_USER_ERROR);
                      return false;
                  }
  
                  $this->contents .= \pack("s*", 0x0204, 8 + $length, $row, $col, 0x00, $length);
                  $this->contents .= $value;
  
                  break;
  
              case "integer" :
                  $this->contents .= \pack("s*", 0x0203, 14, $row, $col, 0x00);
                  $this->contents .= \pack("d", $value);
                  break;
          }
  
          return true;
      }
code: public function setCell($cell, $value, $type = "auto")
      {
          if ($type == "auto") {
              $type = \gettype($value);
          }
  
          if (\is_array($cell)) {
              $parts["row"] = $cell[0];
              $parts["col"] = $cell[1];
          } else {
              $parts = $this->refToArray($cell);
          }
  
          if (!\is_array($parts)) {
              \trigger_error("Cell reference should be in the format A1 or array(0,0).", E_USER_ERROR);
              return false;
          }
  
          $row = $parts["row"];
          $col = $parts["col"];
  
          switch ($type) {
  
              case "string" :
  
                  /**
                   * @todo  it would be nice if we were able to keep that
                   * characters UTF-8 or unicode
                   */
                  $value = \mb_convert_encoding($value, "Windows-1252", "UTF-8");
                  $length = \mb_strlen($value, "Windows-1252");
  
                  if ($length > 255) {
                      \trigger_error("String '$value' is too long. "
                          ."Please keep to a max of 255 characters.",
                          E_USER_ERROR);
                      return false;
                  }
  
                  $this->contents .= \pack("s*", 0x0204, 8 + $length, $row, $col, 0x00, $length);
                  $this->contents .= $value;
  
                  break;
  
              case "integer" :
                  $this->contents .= \pack("s*", 0x0203, 14, $row, $col, 0x00);
                  $this->contents .= \pack("d", $value);
                  break;
          }
  
          return true;
      }
code_tokens: public function setCell ( $ cell , $ value , $ type = "auto" ) { if ( $ type == "auto" ) { $ type = \ gettype ( $ value ) ; } if ( \ is_array ( $ cell ) ) { $ parts [ "row" ] = $ cell [ 0 ] ; $ parts [ "col" ] = $ cell [ 1 ] ; } else { $ parts = $ this -> refToArray ( $ cell ) ; } if ( ! \ is_array ( $ parts ) ) { \ trigger_error ( "Cell reference should be in the format A1 or array(0,0)." , E_USER_ERROR ) ; return false ; } $ row = $ parts [ "row" ] ; $ col = $ parts [ "col" ] ; switch ( $ type ) { case "string" : /**
                   * @todo  it would be nice if we were able to keep that
                   * characters UTF-8 or unicode
                   */ $ value = \ mb_convert_encoding ( $ value , "Windows-1252" , "UTF-8" ) ; $ length = \ mb_strlen ( $ value , "Windows-1252" ) ; if ( $ length > 255 ) { \ trigger_error ( "String '$value' is too long. " . "Please keep to a max of 255 characters." , E_USER_ERROR ) ; return false ; } $ this -> contents .= \ pack ( "s*" , 0x0204 , 8 + $ length , $ row , $ col , 0x00 , $ length ) ; $ this -> contents .= $ value ; break ; case "integer" : $ this -> contents .= \ pack ( "s*" , 0x0203 , 14 , $ row , $ col , 0x00 ) ; $ this -> contents .= \ pack ( "d" , $ value ) ; break ; } return true ; }
docstring: Set the value of an individual cell
  
  @param mixed An excel cell reference such as A1, or an array in the
  format of ($row, $col) usign zero-based integers
  @param mixed the value to put in this cell
  @param the type of value (string|integer). Autodetects by default
  @return boolean Success
docstring_tokens: Set the value of an individual cell