本文整理汇总了PHP中Bitrix\Main\Web\Json类的典型用法代码示例。如果您正苦于以下问题:PHP Json类的具体用法?PHP Json怎么用?PHP Json使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Json类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: Process
private function Process($service, $id = false, $jsdecode = true)
{
$token = $this->GetToken();
$s = curl_init();
if ($id !== false) {
$service = str_replace("#ID#", $id, $service);
}
curl_setopt($s, CURLOPT_URL, "https://api.ozon.ru/{$service}");
//?applicationid={$this->appID}&token=$token
curl_setopt($s, CURLOPT_HTTPHEADER, array("x-ApiVersion: 0.1", "accept:application/json", "x-applicationid:{$this->appID}", "x-token:{$token}"));
curl_setopt($s, CURLOPT_RETURNTRANSFER, true);
$reply = curl_exec($s);
curl_close($s);
if ($jsdecode) {
if (strtoupper(SITE_CHARSET) == "UTF-8") {
$reply = mb_convert_encoding($reply, "utf8", "cp1251");
}
try {
$reply = \Bitrix\Main\Web\Json::decode($reply);
} catch (Exception $e) {
$reply = array();
}
}
return $reply;
}
示例2: renderMenu
function renderMenu($id, $items)
{
?>
<script>
BX('<?php
echo $id;
?>
').onclick = function()
{
this.blur();
BX.adminShowMenu(this,
<?php
$json = array();
foreach ($items as $name => $params) {
$json[] = array('TEXT' => $name, 'ONCLICK' => "window.location.href = '?" . http_build_query($params) . "'");
}
echo Json::encode($json);
?>
, {active_class: 'adm-btn-save-active'});
return false;
};
</script>
<?php
}
示例3: onBeforeHTMLEditorScriptRuns
public static function onBeforeHTMLEditorScriptRuns()
{
$asset = Asset::getInstance();
$asset->addJs('/bitrix/js/newkaliningrad.typografru/typograf.js');
$messages = Loc::loadLanguageFile(Path::normalize(__FILE__));
$asset->addString(sprintf('<script>BX.message(%s)</script>', Json::encode($messages, JSON_FORCE_OBJECT | JSON_UNESCAPED_UNICODE)));
}
示例4: doPostAction
protected function doPostAction($isEdit, $action)
{
/** @global CMain $APPLICATION */
global $APPLICATION;
if ($isEdit) {
$APPLICATION->RestartBuffer();
header('Content-Type: application/json', true);
echo Json::encode($this->arResult);
die;
} else {
switch ($action) {
case 'download':
$APPLICATION->restartBuffer();
header('Content-Type: text/plain', true);
header('Content-Disposition: attachment; filename="recovery_codes.txt"');
header('Content-Transfer-Encoding: binary');
header(sprintf('Content-Length: %d', CUtil::BinStrlen($this->arResult['PLAIN_RESPONSE'])));
echo $this->arResult['PLAIN_RESPONSE'];
exit;
break;
case 'print':
$APPLICATION->restartBuffer();
$this->includeComponentTemplate(static::PRINT_PAGE);
exit;
break;
case 'view':
default:
$this->includeComponentTemplate(static::VIEW_PAGE);
break;
}
}
}
示例5: GetAccessToken
public function GetAccessToken()
{
if (($tokens = $this->getStorageTokens()) && is_array($tokens)) {
$this->access_token = $tokens["OATOKEN"];
if ($this->checkAccessToken()) {
return true;
}
}
if ($this->code === false) {
return false;
}
$h = new \Bitrix\Main\Web\HttpClient(array("socketTimeout" => $this->httpTimeout));
$h->setAuthorization($this->appID, $this->appSecret);
$result = $h->post(self::TOKEN_URL, array("grant_type" => "authorization_code", "code" => $this->code, "client_id" => $this->appID));
$this->arResult = \Bitrix\Main\Web\Json::decode($result);
if (isset($this->arResult["access_token"]) && $this->arResult["access_token"] != '') {
// yandex doesn't send refresh tokens but I leave it here in case they will
if (isset($this->arResult["refresh_token"]) && $this->arResult["refresh_token"] != '') {
$this->refresh_token = $this->arResult["refresh_token"];
}
$this->access_token = $this->arResult["access_token"];
$this->accessTokenExpires = $this->arResult["expires_in"] + time();
$_SESSION["OAUTH_DATA"] = array("OATOKEN" => $this->access_token);
return true;
}
return false;
}
示例6: sendJsonResponse
protected function sendJsonResponse($response)
{
global $APPLICATION;
$APPLICATION->restartBuffer();
header('Content-Type:application/json; charset=UTF-8');
echo Json::encode($response);
$this->end();
}
示例7: sendJsonResponse
protected function sendJsonResponse($response)
{
$this->getApplication()->restartBuffer();
while (ob_end_clean()) {
}
header('Content-Type:application/json; charset=UTF-8');
echo Json::encode($response);
$this->end();
}
示例8: __construct
/**
* Response constructor.
* @param $response
*/
public function __construct($response)
{
$this->response = $response;
$this->fields = Json::decode($this->response);
if ($this->fields['error_code']) {
$this->setError($this->fields);
}
$this->state = 'ok';
if ($this->getErrors()) {
$this->state = 'error';
}
}
示例9: sendJsonResponse
protected function sendJsonResponse($response)
{
if (!defined('PUBLIC_AJAX_MODE')) {
define('PUBLIC_AJAX_MODE', true);
}
global $APPLICATION;
$APPLICATION->restartBuffer();
while (ob_end_clean()) {
}
header('Content-Type:application/json; charset=UTF-8');
echo Json::encode($response);
$this->end();
}
示例10: sendJsonResponse
protected function sendJsonResponse($response, $params = null)
{
if (!defined('PUBLIC_AJAX_MODE')) {
// define('PUBLIC_AJAX_MODE', true);
}
global $APPLICATION;
$APPLICATION->restartBuffer();
if (!empty($params['http_status']) && $params['http_status'] == 403) {
header('HTTP/1.0 403 Forbidden', true, 403);
}
if (!empty($params['http_status']) && $params['http_status'] == 500) {
header('HTTP/1.0 500 Internal Server Error', true, 500);
}
header('Content-Type:application/json; charset=UTF-8');
echo Json::encode($response);
$this->end();
}
示例11: executeComponent
public function executeComponent()
{
/** @global CMain $APPLICATION */
global $APPLICATION;
if ($this->request->isPost() && $this->request['action']) {
// try to connect
$result = $this->toEdit();
$result = Json::encode($result);
$APPLICATION->RestartBuffer();
header('Content-Type: application/json', true);
echo $result;
die;
} else {
$APPLICATION->SetTitle(Loc::getMessage("SECURITY_OTP_TITLE"));
// get data for new OTP connection
$this->arResult = $this->toView();
$this->IncludeComponentTemplate();
}
}
示例12: GetCurrentUser
public function GetCurrentUser()
{
if ($this->access_token === false) {
return false;
}
$h = new \Bitrix\Main\Web\HttpClient();
$result = $h->get(self::USERINFO_URL . '?format=json&oauth_token=' . urlencode($this->access_token));
$result = \Bitrix\Main\Web\Json::decode($result);
if (is_array($result)) {
$result["access_token"] = $this->access_token;
$result["refresh_token"] = $this->refresh_token;
$result["expires_in"] = $this->accessTokenExpires;
}
return $result;
}
示例13: showJsonAnswer
protected function showJsonAnswer($result)
{
if (!defined("PUBLIC_AJAX_MODE")) {
define("PUBLIC_AJAX_MODE", true);
}
if (!defined("NO_KEEP_STATISTIC")) {
define("NO_KEEP_STATISTIC", "Y");
}
if (!defined("NO_AGENT_STATISTIC")) {
define("NO_AGENT_STATISTIC", "Y");
}
if (!defined("NO_AGENT_CHECK")) {
define("NO_AGENT_CHECK", true);
}
if (!defined("DisableEventsCheck")) {
define("DisableEventsCheck", true);
}
require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php";
$GLOBALS["APPLICATION"]->RestartBuffer();
while (ob_end_clean()) {
}
$version = IsIE();
if (!(0 < $version && $version < 10)) {
header('Content-Type:application/json; charset=UTF-8');
}
echo Json::encode($result);
\CMain::finalActions();
die;
}
示例14: htmlspecialcharsbx
?>
">
<?php
echo htmlspecialcharsbx($value);
?>
<a href="javascript:void(0);" data-role="delete-access" data-code="<?php
echo htmlspecialcharsbx($code);
?>
" class="access-delete"></a>
</div>
<?php
}
?>
</div>
<a href="javascript:void(0)" class="bx-action-href" id="add_access" data-role="add-access"><?php
echo GetMessage("SEC_OTP_MANDATORY_RIGHTS_SELECT");
?>
</a>
</td>
</tr>
<?php
$tabControl->Buttons(array("disabled" => !$canWrite, "back_url" => $_GET["return_url"] ? $_GET["return_url"] : "security_otp.php?lang=" . LANG));
$tabControl->End();
?>
</form>
<script id="settings" type="application/json"><?php
echo \Bitrix\Main\Web\Json::encode(array('rights' => array_flip($targetRights)));
?>
</script>
<?php
require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/epilog_admin.php";
示例15: function
<script type="text/javascript">
BX(function () {
BX['LiveFeedClass_<?php
echo $arResult['RAND_STRING'];
?>
'] = new BX.LiveFeedClass({
socnetGroupId: '<?php
echo $arResult['SOCNET_GROUP_ID'];
?>
',
randomString: '<?php
echo $arResult['RAND_STRING'];
?>
',
listData: <?php
echo \Bitrix\Main\Web\Json::encode($arResult['LIST_DATA']);
?>
});
BX.bind(BX('bx-lists-settings-btn'), 'click', function(e) {
BX['LiveFeedClass_<?php
echo $arResult['RAND_STRING'];
?>
'].createSettingsDropdown(e);
});
});
</script>
<?php
$frame->end();
?>
<script type="text/javascript">