на *никс системах можно проверить запущен ли процесс
по файлу процесса, насколько я помню должна существовать папка (/proc/[proc_id]). это можно нагуглить
можно выполнить exec('ps aux') и получить список всех процессов и там же по ИД или имени процесса найти тот исполняемый
проблема этих методов что на некоторых системах пхп настроен довольно безопасно и не даст просто так залезть в файловую систему в /proc или же выполнить команду.
если вам подвласно изменять окружение, то в принципе реализуемо
Производство моего полуспящего мозга - бесконечный цикл с определённым кодом, который работает в фоне (установил через ignore_user_abort)
Нужно, что бы при запуске определённого файла работа вышеупомянутого скрипта останавливалась. Как это сделать?
Сейчас реализовал остановку с помощью бд (файл остановки пишет стоп в бд, а работающий в фоне код проверяет на каждой итерации останавливаться ли ему).
Но это не выгодно, т.к. лишний запрос к бд плюс итерации могут быть частыми(тогда многовато запросов) или очень долгими(тогда скрипт остановится не сразу) (Добавление)
посмотрел про POSIX - но он для Шindows не работает...
Что лучше указать в htacces из каких get параметров получится данный адрес, затем в коде работать с $_GET, или же взять $_SERVER['REQUEST_URI'] (/catalog/test), в коде разбить функцией explode и работать с массивом?
Почему когда открываю мейл ответы через cURL, то результат не грузится.только верхняя строка с сайта, а если через file_get_contents - то всё прогружается? (Добавление)
Немного разобрался.надо перефразировать.
Почему когда я авторизуюсь на mail через cURL, то уже не могу просматривать страницы на mail ответах?
есть массив примерно на 1000 элементов
индексы не стандартные, нужно узнать последний индекс.
как это сделать максимально выгодно по производительности?
Используйте подход с пакетной обработкой.
Например, предварительно вычитать имеющиеся в таблице значения и затем сравнивать локально.
Или записывать во временную таблицу, затем одним запросом переписать строки.
Возможно, хватит банального insert on duplicate key update или insert ignore
заместо "INSERT INTO..." прописать "INSERT IGNORE INTO..." и совпадений не будет?
и как я понимаю для поля нужно будет прописать "UNIQUE"?