本文整理汇总了PHP中Parse\ParseClient::_encode方法的典型用法代码示例。如果您正苦于以下问题:PHP ParseClient::_encode方法的具体用法?PHP ParseClient::_encode怎么用?PHP ParseClient::_encode使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Parse\ParseClient
的用法示例。
在下文中一共展示了ParseClient::_encode方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: send
/**
* Sends a push notification.
*
* @param array $data The data of the push notification. Valid fields
* are:
* channels - An Array of channels to push to.
* push_time - A Date object for when to send the push.
* expiration_time - A Date object for when to expire
* the push.
* expiration_interval - The seconds from now to expire the push.
* where - A ParseQuery over ParseInstallation that is used to match
* a set of installations to push to.
* data - The data to send as part of the push
* @param bool $useMasterKey Whether to use the Master Key for the request
*
* @throws \Exception, ParseException
*
* @return mixed
*/
public static function send($data, $useMasterKey = false)
{
if (isset($data['expiration_time']) && isset($data['expiration_interval'])) {
throw new Exception('Both expiration_time and expiration_interval can\'t be set.');
}
if (isset($data['where'])) {
if ($data['where'] instanceof ParseQuery) {
$where_options = $data['where']->_getOptions();
if (!isset($where_options['where'])) {
$data['where'] = '{}';
} else {
$dd = $data['where']->_getOptions();
$data['where'] = $dd['where'];
}
} else {
throw new Exception('Where parameter for Parse Push must be of type ParseQuery');
}
}
if (isset($data['push_time'])) {
//Local push date format is different from iso format generally used in Parse
//Schedule does not work if date format not correct
$data['push_time'] = ParseClient::getPushDateFormat($data['push_time'], isset($data['local_time']));
}
if (isset($data['expiration_time'])) {
$cc = ParseClient::_encode($data['expiration_time'], false);
$data['expiration_time'] = $cc['iso'];
}
return ParseClient::_request('POST', 'push', null, json_encode(ParseClient::_encode($data, true)), $useMasterKey);
}
示例2: _encode
/**
* Returns an associative array encoding of the current operation.
*
* @return mixed
*/
public function _encode()
{
if ($this->isAssociativeArray) {
$object = new \stdClass();
foreach ($this->value as $key => $value) {
$object->{$key} = ParseClient::_encode($value, true);
}
return ParseClient::_encode($object, true);
}
return ParseClient::_encode($this->value, true);
}
示例3: getSaveJSON
/**
* Returns JSON object of the unsaved operations.
*
* @return array
*/
private function getSaveJSON()
{
$this->beforeSave();
return ParseClient::_encode($this->operationSet, true);
}
示例4: buildQueryString
/**
* Build query string from query constraints.
*
* @param array $queryOptions Associative array of the query constraints.
*
* @return string Query string.
*/
private function buildQueryString($queryOptions)
{
if (isset($queryOptions['where'])) {
$queryOptions['where'] = ParseClient::_encode($queryOptions['where'], true);
$queryOptions['where'] = json_encode($queryOptions['where']);
}
return http_build_query($queryOptions);
}
示例5: _encode
/**
* Returns an associative array encoding of this operation.
*
* @return array
*/
public function _encode()
{
return array('__op' => 'AddUnique', 'objects' => ParseClient::_encode($this->objects, true));
}
示例6: _encode
/**
* Returns associative array representing encoded operation.
*
* @return array
*/
public function _encode()
{
return ['__op' => 'Remove', 'objects' => ParseClient::_encode($this->objects, true)];
}
示例7: _encode
/**
* Returns an associative array encoding of the current operation.
*
* @return mixed
*
* @throws \Exception
*/
public function _encode()
{
$addRelation = array();
$removeRelation = array();
if (!empty($this->relationsToAdd)) {
$addRelation = array('__op' => 'AddRelation', 'objects' => ParseClient::_encode(self::convertToOneDimensionalArray($this->relationsToAdd), true));
}
if (!empty($this->relationsToRemove)) {
$removeRelation = array('__op' => 'RemoveRelation', 'objects' => ParseClient::_encode(self::convertToOneDimensionalArray($this->relationsToRemove), true));
}
if (!empty($addRelation) && !empty($removeRelation)) {
return array('__op' => 'Batch', 'ops' => [$addRelation, $removeRelation]);
}
return empty($addRelation) ? $removeRelation : $addRelation;
}
示例8: getSaveJSON
/**
* Returns JSON object of the unsaved operations.
*
* @return array
*/
private function getSaveJSON()
{
$operationSet = $this->operationSet;
if (!$operationSet) {
// Parse REST API needs {} not [] for "body" request property
$operationSet = new \stdClass();
}
return ParseClient::_encode($operationSet, true);
}