function repairUnqotedJsonValues(string $json) : string {
$json = str_replace(": ", ":", $json);
$json = str_replace("{ ", "{", $json);
$json = str_replace(" }", "}", $json);
$quotes = 0;
$fixMode = false;
$repaired = [];
foreach (mb_str_split($json) as $char) {
$add = [$char];
if ($fixMode) {
if ($char === ":") {
array_push($add, "\"");
}
if ($char === "," || $char === "}") {
array_unshift($add, "\"");
}
if ($char === "\"") {
$fixMode = false;
}
}
$repaired = array_merge($repaired, $add);
if ($char === "\"") {
$quotes++;
}
if ($quotes === 2) {
$fixMode = true;
$quotes = 0;
}
}
return implode("", $repaired);
}
$weirdString = file_get_contents('application.json');
$json = repairUnqotedJsonValues($weirdString);
$user = json_decode($json);
$name = $user->{'Имя'};
print $name;
$recipient = filter_var($_POST['recipient'], FILTER_SANITIZE_EMAIL);
$mail->addAddress($recipient);
function doesMatchMyFormat(string $url) : bool {
if (filter_var($url, FILTER_VALIDATE_URL) === false) {
return false;
}
$host = parse_url($url, PHP_URL_HOST);
if ($host !== "www.site.ru") {
return false;
}
$path = parse_url($url, PHP_URL_PATH);
$parts = explode("/", $path);
if ($parts[1] !== "news") {
return false;
}
if (count($parts) !== 7) {
return false;
}
return true;
}
SELECT
`uid`,
MAX(`utm`) AS 'utm'
FROM
`table`
GROUP BY
`uid`
SELECT
`uid`,
LEFT(GROUP_CONCAT(`utm` ORDER BY id DESC), LOCATE(',', GROUP_CONCAT(`utm` ORDER BY id))-1) AS 'utm'
FROM
`table`
GROUP BY
`uid`
SELECT
`uid`,
GROUP_CONCAT(`utm` ORDER BY id DESC LIMIT 1) AS 'utm'
FROM
`table`
GROUP BY
`uid`
пытаюсь отрендерить круговую диаграмму при помощи mPDF.
$txt = '';
foreach ($sPD as $key => $value) {
$txt .= "<b>".$key."</b>".$value."%0A";
}
'content' => http_build_query($sPD)
function dateToText($date) {
$monthOfYear = date("F Y", strtotime($date));
$daysInMonth = date("d", strtotime("last day of {$monthOfYear}"));
$dayOfMonth = date("d", strtotime($date));
$dayOfWeek = date("N", strtotime($date));
$occurance = 0;
$maxOccurance = 0;
foreach (range(1, $daysInMonth) as $day) {
if (date("N", strtotime("{$day} {$monthOfYear}")) == $dayOfWeek) {
$maxOccurance++;
if ($day <= $dayOfMonth) {
$occurance++;
}
}
}
$weekdayNumber = $occurance == $maxOccurance
? "last"
: match($occurance) {
1 => "first",
2 => "second",
3 => "third",
4 => "fourth"
}
;
$text = $weekdayNumber . " " . date("l \\o\\f F", strtotime($date));
return strtolower($text);
}
$udec = [
'parameters' => [ // <-- вот тут
'draw' => "1",
'columns[0][data]' => "0",
'columns[0][name]' => "",
'search[value]' => "",
'search[regex]' => "false"
]
];
add_filter("nav_menu_css_class", fn() => ["nav_list"], PHP_INT_MAX);
add_action("template_redirect", function() {
$currentUrl = trailingslashit(strtok($_SERVER['REQUEST_URI'], "?"));
if ($currentUrl === "/book/author/") {
$authorId = array_key_exists("id", $_GET) ? (int)$_GET['id'] : null;
$author = !is_null($authorId) ? get_user_by("id", $authorId) : null;
if (empty($author)) {
global $wp_query;
$wp_query->set_404();
status_header(404);
get_template_part(404);
die();
}
}
});
// Валидируем
if (count($path) !== 3) {
http_response_code(400); // вот тут 400, потому что это корявый запрос, мы даже ничего и не искали
die();
}
// Получаем данные
$result = getGesult();
// Валидируем данные
if ($result !== true) {
http_response_code(404);
die();
}
// Дальше код, который выведет данные
file_put_contents($filename,$json,FILE_APPEND | LOCK_EX);
$payload = file_exists($filename) ? ",{$json}]" : "[{$json}]";
$fileHandler = fopen($filename, "c");
fseek($fileHandler, -1, SEEK_END);
fwrite($fileHandler, $payload);
fclose($fileHandler);