Warning: Undefined array key "orderhash" in /home/labreunis/maxkuku.ru/docs/webmaster/index.php on line 177
Список полезных функций
(☞ຈل͜ຈ)☞ Главная  Статьи  Загрузчик Домой


Warning: Undefined variable $name in /home/labreunis/maxkuku.ru/docs/webmaster/index.php on line 209

Warning: Undefined array key "orderhash" in /home/labreunis/maxkuku.ru/docs/webmaster/index.php on line 224

Deprecated: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /home/labreunis/maxkuku.ru/docs/webmaster/index.php on line 224

Warning: Undefined variable $name in /home/labreunis/maxkuku.ru/docs/webmaster/index.php on line 224

Warning: Undefined variable $name in /home/labreunis/maxkuku.ru/docs/webmaster/index.php on line 294
Ok!
Ok!
321
function log_error($message) {
    file_put_contents('php_errors.log', date('Y-m-d H:i:s')." - ".$message.PHP_EOL);
}
php, log to file200Лог в файл php
320
async function getRutubePreview(id) {
let url = `https://rutube.ru/api/video/${id}/thumbnail/`;    
let response = await fetch(url);

if (response.ok) { 
  let json = await response.json();
  console.log(json.url);
  return json.url;  
    
} else {
  return `{"error": "Ошибка HTTP: ${response.status}")`;
}
}
getRutubePreview('86da488c8e7f1427049c2f2fea207989');
js, rutube thumbnail url100Получить превью Рутуб с помощью Яваскрипт
319
  # Удаляем index.php из адреса
  RewriteCond %{THE_REQUEST} ^GET.*index.php [NC]
  # Не применяем к админке, иначе перестает работать страница Highload-блоки
  RewriteCond %{REQUEST_URI} !/bitrix/admin/.* [NC]
  RewriteCond %{REQUEST_URI} !^/bitrix/tools/ [NC]
  RewriteRule (.*?)index.php/*(.*) https://%{HTTP_HOST}/$1$2 [R=301,NE,L]
htaccess, rewrite, bitrix395Удалить index.php из УРЛ редиректом, кроме админки Битрикс
318
последний день месяца
$d = new DateTime('now'); 
$priceValidUntil = $d->format('Y-m-t');
php, date890последний день месяца на php
317
$info = pathinfo($file);
$file_name =  basename($file,'.'.$info['extension']);
php, filename700php имя файла без расширения по УРЛ файла
316
'cache' => array(
       'value' => array (
          'type' => 'memcache',
          'memcache' => array(
              'host' => 'localhost',
              'port' => '11211'
          ),
          'sid' => $_SERVER["DOCUMENT_ROOT"]."#01"
       ),
    ),
memcached, bitrix300настройка memcached в bitrix в файле .settings.php
315
Модуль конвертации картинок для Битрикс
https://marketplace.1c-bitrix.ru/solutions/dev2fun.imagecompress/
битрикс, изображения100Модуль конвертации картинок для Битрикс
314
$ipropValues = new BitrixIblockInheritedPropertyElementValues(
    $arParams['IBLOCK_ID'],
    $arResult["ID"]
);
$arResult["IPROPERTY_VALUES"] = $ipropValues->getValues();
meta values, bitrix28005Получить в Битрикс метаданные элемента
313
// определим константу LOG_FILENAME, в которой зададим путь к лог-файлу
define("LOG_FILENAME", $_SERVER["DOCUMENT_ROOT"]."/mylog-6665444.txt");
//дебаг почты
function custom_mail($to, $subject, $message, $additional_headers='', $additional_parameters='')
{
   AddMessage2Log(
            'To: '.$to.PHP_EOL.
            'Subject: '.$subject.PHP_EOL.
            'Message: '.$message.PHP_EOL.
            'Headers: '.$additional_headers.PHP_EOL.
            'Params: '.$additional_parameters.PHP_EOL
         );
   if ($additional_parameters!='') {
      return @mail($to, $subject, $message, $additional_headers, $additional_parameters);
   } else {
       return @mail($to, $subject, $message, $additional_headers);
   }
}
mail, php, log, bitrix19005mail log bitrix
312
<?=(date('W') + 5) % 5 + 1?>
php, чередование39080Раз в неделю из пяти: первую - одно, вторую - второе. PHP
311
Знак рубля &#8381;
рубль9900Знак рубля
310
CFile::ShowImage($img, $width, $height);
bitrix, img, image, битрикс, изображение460Как вывести в Битрикс картинку по размерам. $img - ID картинки или путь к файлу
309
docker-compose up -d
docker, start50Имея файл docker-compose.yml стартовать докер приложение
308
system('tail -n 100 /home/bitrix/.msmtprc')
почта, bitrixvm, log mail300Посмотреть в php строке Битрикс лог почты
307
<meta http-equiv="refresh" content="0;url=https://spa-cavefish.ru/odintsovo">
meta, redirect, редирект html200Редирект 301 средствами html
306
<div><?=(new CBXSanitizer)->sanitizeHtml($foo);?></div>

$login = $DB->ForSql($_REQUEST['login']);
$res = $DB->Query("SELECT * FROM b_user WHERE LOGIN='$login'");

$arInsert = $DB->PrepareInsert("b_user", ["LOGIN" => $_REQUEST["login"]]);
$sql = "INSERT INTO b_user (".$arInsert[0].") VALUES (".$arInsert[1].")";
$res = $DB->Query($sql);
sanitize, bitrix100Обработать переменную в Битрикс
305
Внутрь хед ставим
<script src="https://www.google.com/recaptcha/enterprise.js?render=6LfM-tUqAAAAAAK871StVSv4ssTIyIeOk7I7&hl=ru&badge=bottomleft"></script>
и
<script>
        function onClick(e) {
        e.preventDefault();
        grecaptcha.enterprise.ready(async () => {
            const token = await grecaptcha.enterprise.execute('6LfM-tUqAAAAAAK871StVSv4ssTsjweIyIeOk7I7', {action: 'SUBMIT'});
            // IMPORTANT: The 'token' that results from execute is an encrypted response sent by
            // reCAPTCHA to the end user's browser.
            // This token must be validated by creating an assessment.
            // See https://cloud.google.com/recaptcha/docs/create-assessment
        });
        }
    </script>
После отправки формы в консоли Нетворк перейти по ссылке сгенерированного хеша
рекапча3, recaptcha v3340070Рекапча версия 3 установка
304
$assetManager->addJs( "https://cdn.ampproject.org/v0.js");
amp, bitrix30090Скрипт загрузки АМП
303
<? $line = '';
                $files = scan_dir(__DIR__ . "/im/", [".", ".."]); // функция scan_dir в init.php
                foreach($files as $i=>$f){
                    $dir = $f;
                    $line .= '<a class="slider-doc" href="/clinic/diploma/im/'.$f.'"><img class="lazyload" data-src="/clinic/diploma/im/'.$f.'" style="width:200px; height:320px; object-fit:cover"/></a>';
                }
                echo $line;
                ?>
scan_dir, php1900Сканировать папку и вывести только изображения
302
if (strlen($youtube_id) > 11) { // rutube
        $result = file_get_contents('https://rutube.ru/api/video/' . $youtube_id . '/thumbnail/');
        // Will dump a beauty json :3
        $preview_url = json_decode($result, true);
        $preview_url_url = $preview_url['url'];
        echo '<div class="youtube" itemscope itemtype="http://schema.org/VideoObject" data-src="https://rutube.ru/play/embed/' . $youtube_id . '" id="' . $youtube_id . '" style="background-image: url(//i.ytimg.com/vi/' . $youtube_id . '/0.jpg);">
        <meta itemprop="name" content="' . $name . '"/>
        <meta itemprop="description" content="' . $descr . '"/>
        <meta itemprop="duration" content="PT' . $t[0] . 'M' . $t[1] . 'S">
        <meta itemprop="isFamilyFriendly" content="true">
        <meta itemprop="uploadDate" content="' . date("Y-m-d H:i:s", filemtime(__FILE__)) . '"/>
        <span itemprop="thumbnail" itemscope itemtype="http://schema.org/ImageObject"> 
        <img itemprop="contentUrl" src="' . $preview_url_url . '" style="width:580px;height:324px;" alt="' . $name . '"/>
        <meta itemprop="thumbnailUrl" content="' . $preview_url_url . '">
        <meta itemprop="width" content="580">
        <meta itemprop="height" content="324">
        </span>
        <div class="play"><a itemprop="url" href="https://rutube.ru/play/embed/' . $youtube_id . '"></a></div></div>';
    }
php, preview130Функция php для вставки видео Рутуб по кнопке с превью картинкой
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16