Muszę za pomocą php uruchamiać komendy które będą pracować od kilku minut do nawet kilku godzin. Wszystko na linux, do tego potrzebuję potwierdzenia że wszystko się poprawnie wykonało.

Jak to najlepiej ogarnąć?

#php #programowanie
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@K-S-: Zrób tak żeby te komendy wrzucały output i/lub status do pliku (zależy co konkretnie potrzebujesz). W PHP odpalasz je w tle, a innym skryptem odpalanym np. z crona sprawdzasz te pliki z outputem i na tej podstawie stwierdzasz czy komenda zakończyła działanie i z jakim skutkiem.

Do tego możesz dodać jakiś lockfile żeby mieć pewność, że komenda nie zostanie odpalona wielokrotnie na raz.
  • Odpowiedz
@K-S-: Ja zwykle używam komendy

screen

Odpalam screen, tam komendę, wychodzę, wylogowuję się z serwera.
Po jakimś czasie ssh i sprawdzam w logach (output do pliku najlepiej, lub stdout i wchodzisz w screena żeby sprawdzić co się dzieje).
Odpalałem tak skrypty co kilka dni chodziły.
  • Odpowiedz
#naukaprogramowania #php
Co teraz jest na topie jesli chodzi o architekture? Jestem średnio-zaawansowanym programista. Natomiast nie miałem styczności jeśli chodzi o architektury na backendzie (Symfony) i chce to przećwiczyć, poznać. Czytam w internecie, że są takie rzeczy jak DDD, CQRS, ES, Hexagonal, mikroserwisy, TDD itp. Ktoś może powiedzieć co powinienem przećwiczyć, na co zwrócic uwagę? Mam projekt 4fun, nie duży który stworzyłem jako MVC i chce go przerobić
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@zyjdajzyc1: Masz, poćwicz zrozumienie tych wszystkich buzz wordów. Seria trzech fajnych artykułów. ;-)
https://herbertograca.com/2017/11/16/explicit-architecture-01-ddd-hexagonal-onion-clean-cqrs-how-i-put-it-all-together/
https://herbertograca.com/2018/07/07/more-than-concentric-layers/
https://herbertograca.com/2019/06/05/reflecting-architecture-and-domain-in-code/

Sugerowałbym nie rzucać się od razu na wszystko jeśli dopiero poszczególne rzeczy poznajesz. One thing at
  • Odpowiedz
@zyjdajzyc1: Ucz sie do znudzenia o DDD, dzis to juz standard a mimo to zdarzaja sie seniorzy, ktorzy nie potrafia napisac dobrego agregatu lub nie znaja wiekszosci wzorcow z palety DDD. CQRS swietnie komponuje sie z DDD, wiec na pewno na niego trafisz, prosty i bardzo funkcjonalny wzorzec. Dobrze zebys znal koncepcje ES ale realnie, prawdopodobnie nigdy w projekcie go nie uswiadczycz, poniewaz jego uzasadnione uzycie to bardzo waskie przypadki.
  • Odpowiedz
Singleton fajnie działał do momentu autoryzacji bo w momencie kiedy kończy się request to autoryzacja przepada w p---u


@seba_thc666: To użyj jakiegoś storage, np. Redisa czy nawet bazy danych do przechowywania tokenu.
  • Odpowiedz
@massejferguson: flip zamieni ci key z value. Masz przypisanie do zmienne $x wartości $y. A, że nie można mieć wielu kluzy z tą samą wartością, to kolizja zmniejszy ci ilość (count) o 1. Stąd 4,4.
Co to za pytanie/pytania, bo chyba jeszcze kilka wrzucałeś?
  • Odpowiedz
Na jakim CMSie najlepiej obecnie postawić stronę-wizytówkę dla firmy? Główne skrzypce gra customowy layout dla podstron, dodatkowo chcę dać możliwość edytowania bloków z contentem na stronie. Wordpress to byłby chyba overkill dla takiej strony, bo wymagane ficzery to tylko właśnie edytowanie contentu, form kontaktowy, ewentualnie moduł blogowy. Przydałby się też multilang i to wszystko.

#programowanie #php
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@massejferguson: Zacznijmy od tego że od wersji PHP8 taki zapis jest błędny i wyrzuca Fatal Error (W PHP7 rzucał E_DEPRECATED).

Natomiast co do samego przykładu to jest podchwytliwy przez brak nawiasów. W PHP ewaluacja następuje od lewej do prawej, więc:

Pierwszy warunek true ? '1' : ... jest prawdziwy, więc ewaluuje się do wartości '1'. Jednak ze względu na sposób łączenia operatorów trójargumentowych PHP kontynuuje ewaluację następnego operatora trójargumentowego, traktując
  • Odpowiedz
Witam, od kilku lat wraz ze wspolnikiem rozwijam duzy system klasy CRM (od zarządzania kontaktami, po faktury i serwis, moduly szkoleniowe itp.), jednak nie wiem jaka bedzie jego dalsza perspektywa, a zarobki w IT są bardzo kuszące. Aktualnie korzysta z niego kilkanaście firm. Nie mam innego komercyjnego doświadczenia poza byciem wspolwlascicielem firmy i tego systemu (strona techniczna cala po mojej stronie).

Napisalem tam frontend w JS i jQuery, a jako backend PHP. Z
S______n - Witam, od kilku lat wraz ze wspolnikiem rozwijam duzy system klasy CRM (od...

źródło: 5cfa5e4aaf0ff_o_large

Pobierz
  • 25
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@S______n: doucz się frameworków, dobrych praktyk, zrób kilka projektów w nowych frameworkach, jakieś bazy danych, sql, trochę devops no i ofc angielski. z opisu wynika, że sporo ci brakuje, pewnie ze 2k godzin na to zejdzie i potem będziesz mógł startować na juniora.
  • Odpowiedz
@S______n bez zobaczenia kodu można tylko gdybać, ale na podstawie phalcona i jQuery wnioskuję, że masz szansę na zaimponowanie pracodawcom, którzy akurat szukają szambonurka do ciężkiego legacy
  • Odpowiedz
@massejferguson: W tym przykładzie chodzi o to, że -1 jest traktowane jak true;

== oznacza porównanie pod względem zawartości, nie zaś typu danych.

W PHP wszystkie liczby różne od zera przy porównywaniu pod względem zawartości (liczb z wartością logiczną) są traktowane jako true, więc jeśli pod $x będzie jakakolwiek liczba inna niż 0, to
  • Odpowiedz
@Serghio @massejferguson należy podkreślić, że w przypadku porównań, które są krytyczne dla bezpieczeństwa zawsze należy stosować === w przeciwnym wypadku, może dojść do sytuacji jak wyżej, ale np. przy porównywaniu hashy haseł do logowania. Są nawet całe kolekcje 'magic hashy', które mogą służyć do przechodzenia takich porównań.
  • Odpowiedz
#php #symfony #naukaprogramowania
Mam problem, korzystam z tego https://symfony.com/doc/current/security/passwords.html#reset-password aby móc resetować hasło. Chciałem też tego użyć do zmiany maila albo usuwania konta. Mam dzięki temu już obsługę tokenów, walidacje itp. Tylko czy mogę, jak tego użyć? Chciałem zrobić kopiuj wklej paczki ale to bezsensu. Za dużo jest tych mechanizmów i klas żeby zrobić jakiś dekorator. A jeśli chciałbym użyć takiej samej klasy to nie jest intuicyjne
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Wchodzę w swoje konto, klikam w przycisk "Wyślij link do zmiany email"


@zyjdajzyc1: ciekawość, a co w przypadku gdy ktoś już nie ma dostępu do swojego starego adresu email i właśnie dlatego chce go zmienić? Przemyślałeś to? :P
  • Odpowiedz
@zyjdajzyc1: Zmiana e-mail niesie za sobą dużo konsekwencji, łącznie z kwestiami bezpieczeństwa. Można kogoś pozbawić konta na zawsze. Wszystko zależy od typu serwisu, ale zazwyczaj takie rzeczy wymagają ręcznej interwencji administratora, nie implementuje się takiej funkcjonalności, prędzej usunięcie konta. Zazwyczaj, jak ktoś zapomni, utraci dostęp do swojego e-maila to zakłada nowe konto w takiej zwykłej stronie, chyba, że w serwisie są jakieś profity, tak jak Steam itp.
  • Odpowiedz
Spam tagami dla zasięgu:
#pytanie #programowanie #programista15k #vuejs #javascript #laravel #php #informatyka #docker #ubuntu
Oprócz ChatGPT jakie są jeszcze inne "sztuczne inteligencje" które pomogą rozwiązać problemy programisty php/laravel/vuejs/javascript? Pytam ponieważ czasami ChatGPT daje tak głupie, nie logiczne, przestarzałe informacje że to głowa mała :(
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Cześć, ostatnio zadawałem już to pytanie, ale zapomniałem otagować i przepadło, także wrzucę jeszcze raz, bo jest mi to mega potrzebne. W Symfony 6.3 doszedł atrybut MapRequestPayload. Czy jest możliwość zmapowania tej listy obiektów z pola $items do listy obiektów DTO?

json
{
"items": [
{
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

MapRequestPayload


@danoxide: nie mialem jeszcze okazji uzywac natomiast, mozesz to osiagnac wlasnym resolverem prosty denormalizer a na koniec wywolanie na nim walidacji, podejscie o tyle lepsze ze, mozesz nim rozwiazywac json, multipart i query w dowolnej kombinacji z uzyciem strategii
  • Odpowiedz
✨️ Obserwuj #mirkoanonim
Mirki, szukam pracy, wybralbym cos z linkedina/itradar ale nie tym razem. Szukam firmy z wlasnym produktem, ktora o niego dba i rozumie potrzebe testowania, refaktoryzacji, zakupu infrastruktury. Zespolu ktory jest komunikatywny, dostarcza jakosciowy kod i stara sie szukac najlepszych rozwiazan, nie mam problemu z juniorami jesli strategia firmy zaklada przydzielanie buddies. Ciezko mi zniesc w projektach podejscie ala jakos to bedzie i tegowania.

Komercyjnie w #php 7
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#php #laravel
1)Robię teraz bootcamp laravela. Możecie wyjaśnić czy dobrze rozumiem ten kod? Jak coś moglibyście mnie poprawić?

namespace App\Models;

use Illuminate\Database\Eloquent\Model;
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Masz jeden folder o nazwie model w ktorym laduja twoje wszystkie modele


@szubke: nie ucz jego tak, bo rzeczywiście zrozumie, że w app/Models będą same modele, a jak model będzie gdzie indziej to się pogubi (np. model w package discovery, chociaż w teorii nawet nie ma to aż tak znaczenia),

lepiej napisać: obecnie masz jeden folder o nazwie Model (w katalogu app; nie jest on ani plikiem, ani klasą, jest po prostu
  • Odpowiedz
Prowadzę sklep na prestashop 1.7 (wiem że stary ale jest tak dużo modułów i autorski szablon że boję się że po migracji nic nie będzie działać), do tej pory sam ogarniałem wszystkie problemy informatyczne ze sklepem. Ostatnio jednak nie mam czasu aby szukać rozwiązań i dłubać w kodzie, a pojawiło się kilka problemów. Postanowiłem zlecić ich naprawę. Oto jakie mam problemy:

- Czasem klient wchodzi na sklep, robi zamówienie, przelew ale w sklepie
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach