Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Valabilitate permis auto cat. A s...

Caramida aparenta peste termosistem

Linistea din timpul penelor de cu...

Achiziție laptop baterie det...
 Cenzura in masa comentarii youtube

Inscriere copil la scoala in Roma...

exista adaptoare pentru baterii P...

Sa folosim antivirus, antimalware?
 SMS suspect livrare "posta ro...

Film original sau pirat?

Cum poti inregistra CD-uri in for...

Ceainaria celor pasionați de...
 Probleme la acoperis din cauza in...

Transferuri instant intre bancile...

player video cu preview cadru pe ...

Carrefour Act for good
 

Nelamurire legata de sintaxa intalnita in laravel

- - - - -
  • Please log in to reply
3 replies to this topic

#1
wolfenste

wolfenste

    Member

  • Grup: Members
  • Posts: 529
  • Înscris: 02.05.2018
/vendor/laravel/framework/src/Illuminate/Routing/RoutingServiceProvider.php

Linia 53:
    
$routes = $app['router']->getRoutes();
Numai ca acest $app e un obiect de tipul Illuminate\Foundation\Application (obiectul de baza al aplicatiei). Cum poate sa fie obiect fiind referit cu sintaxa pentru arrays? Eu daca incerc un mic cod de test imi raspunde:
"Cannot use object of type Application as array"

Mai mult, 'router' nu e nici macar atribut in $app. E cheie intr-un atribut al lui $app, anume $instances. Si ca sa fie uimirea si mai mare,
$app ['router'] === $app->instances ['router'] 
TRUE

#2
alx42

alx42

    Senior Member

  • Grup: Senior Members
  • Posts: 2,802
  • Înscris: 26.06.2014
probabil ca are implementata interfata ArrayAccess care iti permite sa accesezi obiectele ca si arrayuri
https://www.php.net/...arrayaccess.php

incearca sa eviti cacaturile astea pentru ca introduc conditii "speciale" prin cod si il fac mai greu de urmarit. peste 5 ani nu o sa mai stii ce ai acolo.
in practica nu aduc nici un avantaj serios, decat sintaxa mai interesanta

#3
wolfenste

wolfenste

    Member

  • Grup: Members
  • Posts: 529
  • Înscris: 02.05.2018
Da, asta era. Thx.

Asta nu-i nimic, sa vezi facades ce confuzii aduc pentru incepatori. Zici ca sunt apeluri la metode statice dar nu-s. Cica ar face framework-ul mai usor de folosit (cu costul de a-i intelege mai greu dedesubturile).

#4
wolfenste

wolfenste

    Member

  • Grup: Members
  • Posts: 529
  • Înscris: 02.05.2018

 alx42, on 02 aprilie 2020 - 15:32, said:

probabil ca are implementata interfata ArrayAccess care iti permite sa accesezi obiectele ca si arrayuri
https://www.php.net/...arrayaccess.php

incearca sa eviti cacaturile astea pentru ca introduc conditii "speciale" prin cod si il fac mai greu de urmarit. peste 5 ani nu o sa mai stii ce ai acolo.
in practica nu aduc nici un avantaj serios, decat sintaxa mai interesanta

Din pacate trebuie sa folosesc cacaturile astea in Laravel. Serviciile sunt inregistrate in abstract. Este creat un serviciu abia cand incerci sa-l folosesti prima data scriind $app ['nume_serviciu'] si se face asta apeland automat metoda offsetGet () din interfata ArrayAccess. Bine, poti apela manual make () cu numele serviciului dar ei recomanda sa folosesti abordarea lor.

Anunturi

Neurochirurgie minim invazivă Neurochirurgie minim invazivă

"Primum non nocere" este ideea ce a deschis drumul medicinei spre minim invaziv.

Avansul tehnologic extraordinar din ultimele decenii a permis dezvoltarea tuturor domeniilor medicinei. Microscopul operator, neuronavigația, tehnicile anestezice avansate permit intervenții chirurgicale tot mai precise, tot mai sigure. Neurochirurgia minim invazivă, sau prin "gaura cheii", oferă pacienților posibilitatea de a se opera cu riscuri minime, fie ele neurologice, infecțioase, medicale sau estetice.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate