<?php
namespace PhpOffice\PhpSpreadsheet\Worksheet;
use PhpOffice\PhpSpreadsheet\Exception as PhpSpreadsheetException;
class SheetView
{
// Sheet View types
const SHEETVIEW_NORMAL = 'normal';
const SHEETVIEW_PAGE_LAYOUT = 'pageLayout';
const SHEETVIEW_PAGE_BREAK_PREVIEW = 'pageBreakPreview';
private const SHEET_VIEW_TYPES = [
self::SHEETVIEW_NORMAL,
self::SHEETVIEW_PAGE_LAYOUT,
self::SHEETVIEW_PAGE_BREAK_PREVIEW,
];
/**
* ZoomScale.
*
* Valid values range from 10 to 400.
*
* @var ?int
*/
private $zoomScale = 100;
/**
* ZoomScaleNormal.
*
* Valid values range from 10 to 400.
*
* @var ?int
*/
private $zoomScaleNormal = 100;
/**
* ShowZeros.
*
* If true, "null" values from a calculation will be shown as "0". This is the default Excel behaviour and can be changed
* with the advanced worksheet option "Show a zero in cells that have zero value"
*
* @var bool
*/
private $showZeros = true;
/**
* View.
*
* Valid values range from 10 to 400.
*
* @var string
*/
private $sheetviewType = self::SHEETVIEW_NORMAL;
/**
* Create a new SheetView.
*/
public function __construct()
{
}
/**
* Get ZoomScale.
*
* @return ?int
*/
public function getZoomScale()
{
return $this->zoomScale;
}
/**
* Set ZoomScale.
* Valid values range from 10 to 400.
*
* @param ?int $zoomScale
*
* @return $this
*/
public function setZoomScale($zoomScale)
{
// Microsoft Office Excel 2007 only allows setting a scale between 10 and 400 via the user interface,
// but it is apparently still able to handle any scale >= 1
if ($zoomScale === null || $zoomScale >= 1) {
$this->zoomScale = $zoomScale;
} else {
throw new PhpSpreadsheetException('Scale must be greater than or equal to 1.');
}
return $this;
}
/**
* Get ZoomScaleNormal.
*
* @return ?int
*/
public function getZoomScaleNormal()
{
return $this->zoomScaleNormal;
}
/**
* Set ZoomScale.
* Valid values range from 10 to 400.
*
* @param ?int $zoomScaleNormal
*
* @return $this
*/
public function setZoomScaleNormal($zoomScaleNormal)
{
if ($zoomScaleNormal === null || $zoomScaleNormal >= 1) {
$this->zoomScaleNormal = $zoomScaleNormal;
} else {
throw new PhpSpreadsheetException('Scale must be greater than or equal to 1.');
}
return $this;
}
/**
* Set ShowZeroes setting.
*
* @param bool $showZeros
*/
public function setShowZeros($showZeros): void
{
$this->showZeros = $showZeros;
}
/**
* @return bool
*/
public function getShowZeros()
{
return $this->showZeros;
}
/**
* Get View.
*
* @return string
*/
public function getView()
{
return $this->sheetviewType;
}
/**
* Set View.
*
* Valid values are
* 'normal' self::SHEETVIEW_NORMAL
* 'pageLayout' self::SHEETVIEW_PAGE_LAYOUT
* 'pageBreakPreview' self::SHEETVIEW_PAGE_BREAK_PREVIEW
*
* @param ?string $sheetViewType
*
* @return $this
*/
public function setView($sheetViewType)
{
// MS Excel 2007 allows setting the view to 'normal', 'pageLayout' or 'pageBreakPreview' via the user interface
if ($sheetViewType === null) {
$sheetViewType = self::SHEETVIEW_NORMAL;
}
if (in_array($sheetViewType, self::SHEET_VIEW_TYPES)) {
$this->sheetviewType = $sheetViewType;
} else {
throw new PhpSpreadsheetException('Invalid sheetview layout type.');
}
return $this;
}
}
Get access token to initiates payment transaction.
generate-token
| Parameter | Type | Comments |
|---|---|---|
| client_id | string | Enter merchant API client/primary key |
| secret_id | string | Enter merchant API secret key |
| env | string | Enter merchant API environment |
| merchant_id | string | Enter merchant API merchant id |
Request Example (guzzle)
<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', $base_url. 'v1/generate-token', [
'headers' => [
'accept' => 'application/json',
'content-type' => 'application/json',
],
'form_params' => [
'client_id' => '$client_id',
'secret_id' => 'secret_id',
'env' => 'env',
'merchant_id' => 'merchant_id',
],
]);
echo $response->getBody();
**Response: SUCCESS (200 OK)**
{
"message": {
"success": [
"Successfully token is generated"
]
},
"data": {
"token":"eyJpdiI6InpkczhjTjhQdVhUL2lKQ0pSUUx6aUE9PSIsInZhbHVlIjoiVGVBTVBDTXltbjNZcEIvdEJveGpTSno3TU5NRUtnVkhCZ1pHTFNCUnZGQ2UxMnYxN202cEE1YVRDTEFsc0ZERExoTjdtL0dTL2xoU3QzeUJJOExiMUx5T0w1L0llUXhTUkU1cWVLWEdEbEplb0dKNXcwbTNRM0VxdkUwYzZuNFdtNkhMQ0pRZysyNWkvdzBxSlBoSVBSOGFTekNnR2RXNHVtcG9lMGZOTmNCcm1hR3c5Sk9KTnB4Y3ltZDl6cm90MThrR21Ca3B1azc3bXRiQ0J6SW96UVo1elNkU1ZqeE05bTcwWGp1MEUxWlJFdnNWTmpSbnVpeW92b2U4dXZkUGgyb1VmK0luaGdyaFlsVTZlcVpVRnZlTG1DeFF6Ykk2T2h6Z3JzbnIyNHpNdHowSE5JdDR0Y0pZT20zUm1XYW8iLCJtYWMiOiJlY2M4NGE1OGUzYzkzYzk0YzljNmVmNjE0YWI0ZDIwOGI3NDQ2YWEyY2ZhNzc0NzE4ZmY1ZmYyMz
IyZmQzNDY1IiwidGFnIjoiIn0=",
},
"type": "success"
}
**Response: ERROR (400 FAILED)**
{
"message": {
"error": [
"Invalid credentials."
]
},
"data": null,
"type": "error"
}