Hjäp med PHP - Non-static method should not be called statically

Trädvy Permalänk
Medlem
Registrerad
Feb 2012

Hjäp med PHP - Non-static method should not be called statically

Försöker få igång ett gammalt cms som ger errors med nyare versioner av php (5.4+)

Error

Non-static method Load::library() should not be called statically

Så antar att problemet ligger här men vet inte hur jag ska göra

//Autoload configs and libraries Load::library('config'); Base::autoload();

Någon som kan rätta detta? Funkade som det skulle med 5.1
Tacksam för hjälp

- Följ gärna via Twitch.tv/gribblurk -
Välkomna framtiden!
Eth: 0x7ba9ab64c77724c12e1273eaa8eb22035e295925

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Aug 2009

Du behöver skapa något som håller objektet du kan inte calla det direkt.

7900x @ 4,7ghz - 1080ti @ 2100

Trädvy Permalänk
Medlem
Registrerad
Feb 2012
Skrivet av celoz:

Du behöver skapa något som håller objektet du kan inte calla det direkt.

Har testat och sökt men får det inte att fungera tyvärr Hur skulle jag kunna göra det på ett korrekt sätt?
Känns bättre att lösa det än att göra en fullösning al'a nedgradering till 5.1 men mina kunskaper är ytterst begränsade

- Följ gärna via Twitch.tv/gribblurk -
Välkomna framtiden!
Eth: 0x7ba9ab64c77724c12e1273eaa8eb22035e295925

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Jan 2004
Skrivet av Cudage:

Har testat och sökt men får det inte att fungera tyvärr Hur skulle jag kunna göra det på ett korrekt sätt?
Känns bättre att lösa det än att göra en fullösning al'a nedgradering till 5.1 men mina kunskaper är ytterst begränsade

Du kanske ska börja med att berätta vilket gammalt CMS det rör sig om.
OM nu koden var korrekt för en äldre version av PHP är nog risken stor att du kommer få ännu fler felmeddelanden efter du "rättat" den koden du nu får fel på.

Trädvy Permalänk
Medlem
Plats
Järfälla
Registrerad
Jan 2004

Du kan inte kalla på metoden Load::library() utan att ha en instans av Load. Hade den varit static deklarerad hade du kunnat anropa den. http://php.net/manual/en/language.oop5.static.php

Edit: Det verkar gå, men är deprecated och genererar varning beroende på error_reporting()

Trädvy Permalänk
Medlem
Registrerad
Feb 2012
Skrivet av iXam:

Du kanske ska börja med att berätta vilket gammalt CMS det rör sig om.
OM nu koden var korrekt för en äldre version av PHP är nog risken stor att du kommer få ännu fler felmeddelanden efter du "rättat" den koden du nu får fel på.

Jag har tyvärr inget namn på det CMS:et då det är ett 5-6år gámmalt system en snubbe på ett forum för privatservrar knackat ihop på sin fritid lagt upp och originaltråden inte längre finns kvar då forumet uppdaterats sen dess
Var en spanjor som hört av sig och ville få igång ett template till den som jag designat för länge sedan hehe Internet kan bjuda på oväntade överrraskningar

- Följ gärna via Twitch.tv/gribblurk -
Välkomna framtiden!
Eth: 0x7ba9ab64c77724c12e1273eaa8eb22035e295925

Trädvy Permalänk
Medlem
Registrerad
Feb 2012
Skrivet av trexake:

Du kan inte kalla på metoden Load::library() utan att ha en instans av Load. Hade den varit static deklarerad hade du kunnat anropa den. http://php.net/manual/en/language.oop5.static.php

Edit: Det verkar gå, men är deprecated och genererar varning beroende på error_reporting()

Tackar så mycket för era svar Vilka skador teoretiskt skulle ske om jag då justerar error_reporting att inte rapportera strict errors eller använder mig av en tidigare php?
För som ovanstående nämnt kommer det säkert vara en hel del andra liknande problem med kodningen om jag nu rättar till den biten.

Lyckas inte få ordning på det med min fulkodning och tar just nu för mycket energi då man för tillfället enbart har vänster hand att skriva med pga fraktur hehe
Känns som att det enklaste blir att strunta i det hela och istället lägga tiden på att förbättra min PHP genom att läsa på så att man inte är lika förvirrad på hur uppbyggnaderna ska vara

- Följ gärna via Twitch.tv/gribblurk -
Välkomna framtiden!
Eth: 0x7ba9ab64c77724c12e1273eaa8eb22035e295925