Új hozzászólás Aktív témák
-
stLhee
csendes tag
válasz
urandom0 #21814 üzenetére
A try-catch nem dobott hibát, simán lefutott a lekérdezés. Az említett echo-k nem adtak eredményt, a select-parancs miatt. A harmadik meg hibát dobott nekem, hogy nem létezik ilyen függvény.
A megoldást a $result object adta, var-dumppal néztem, de print_r-rel ez az eleje:Microsoft\Graph\Generated\Models\User Object
(
[backingStore:Microsoft\Graph\Generated\Models\Entity:private] => Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore Object
(
[isInitializationCompleted:Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore:private] => 1
[returnOnlyChangedValues:Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore:private] =>
[store:Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore:private] => ArrayEz alapján sikerült könyvtárat találni, ami át tudta json stringé konvertálni,
use Microsoft\Kiota\Serialization\Json\JsonSerializationWriterFactory;
$writerFactory = new JsonSerializationWriterFactory();
$writer = $writerFactory->getSerializationWriter('application/json');
$writer->writeObjectValue(null, $result);
$jsonString = $writer->getSerializedContent();onnan meg már hozzá lehet férni a kért adatokhoz:
$data = json_decode($jsonString -> getContents(), true);
Úgyhogy ez a része a dolognak megoldódott, még a multifaktoros property-kre leszek kíváncsi, de az - ahogy láttam - bonyolultabb.
Köszi a segítséget, sokat segített, hogy lehetett beszélni róla -
urandom0
senior tag
válasz
stLhee #21813 üzenetére
De milyen objectet kapsz, mi van benne?
print_r($result);
Ha berakod try..catch blokkba a lekérdezést, nem dob kivételt?Ezek a mezők kellenének neked? Ha megpróbálod kiíratni, mit látsz?
echo $result->getDisplayName();
echo $result->getUserPrincipalName();
echo $result->getOnPremisesImmutableId();
Ezeket a példákat nézted már, gondolom?
-
stLhee
csendes tag
válasz
urandom0 #21812 üzenetére
Igen, ezzel próbálkoztam, itt egy kódrészlet (email-cím alapján megkeresi az M365 felhasználót és három adatát próbálja kinyerni):
$tokenContext = new ClientCredentialContext( $tenantId, $clientId, $clientSecret);
$graphClient = new GraphServiceClient($tokenContext, $scopes);
$requestConfiguration = new UserItemRequestBuilderGetRequestConfiguration();
$queryParameters = UserItemRequestBuilderGetRequestConfiguration::createQueryParameters();
$queryParameters->select = ["displayName","UserPrincipalName","OnPremisesImmutableId"];
$requestConfiguration->queryParameters = $queryParameters;
$result = $graphClient->users()->byUserId($email)->get($requestConfiguration)->wait();Csak válaszként olyan object-et kapok, amiből a kért adatokat nem tudom kicsomagolni. Így nem tudom, hogy az eredeti kérdés esetleg itt vérzik-e el?
-
urandom0
senior tag
válasz
stLhee #21810 üzenetére
Ott a hivatalos SDK, azt célszerű használni: https://github.com/microsoftgraph/msgraph-sdk-php
-
stLhee
csendes tag
Sziasztok!
Bocs a láma kérdésért: PHP-ből hozzá lehet férni a Microsoft Graph API-ján keresztül egy M365 user extended property-jeihez írásra/olvasásra/megjelenítésre?
(Más nyelven meg lehet oldani könnyen, igen, de most kifejezetten a php-s megoldás foglalkoztat : )
Köszi! -
-
biker
nagyúr
válasz
supercow #21807 üzenetére
Adminerrel vannak gondok, főleg ha fent felejted éles tárhelyen
Elég sok sérülékenység megy rá, és van jópár hosting, ahol már feltölteni sem engedik a filet emiatt.
Legutóbb egy weblap költöztetés miatt fel akartam rakni mhostingos tárhelyre, és blokkolták ott is
kénytelen voltam wp backup plugint keresni -
urandom0
senior tag
válasz
.-..-. #21805 üzenetére
Nagyon sok minden történt a PHP háza tájékán az 5-ös verzió óta. Kis túlzással azt lehet mondani, hogy újra kell tanulni az egész nyelvet. Új operátorok, új osztályok, új típusok, enumok, union és intersection types, a szigorúbb típusosság felé való elmozdulás, stb. Vannak ezek a "migrációs" oldalak: https://www.php.net/manual/en/migration70.php
Legalább a "new features" szakaszokat, hogy lássa az ember, mennyi minden változott. 8-tól felfelé az egyes kiadásokhoz készültek ilyen összehasonlító oldalak:
https://www.php.net/releases/8.0/en.php
https://www.php.net/releases/8.1/en.php
https://www.php.net/releases/8.2/en.php
És így tovább... ezek is érdekesek.Igen, a Composer hasonló a Mavenhez, ez a PHP de facto csomagkezelője.
-
.-..-.
tag
válasz
urandom0 #21804 üzenetére
Ajjaj, mennyire le vagyok maradva ...
A Composer eszembe sem jutott, mert anno (az őskorban) nem használtam. Talán nem is létezett akkor még. (PHP4/5 idején)
Csak tudom, hogy most létezik, de nem ismerem. Feltételezem valami olyasmi lehet valamennyire, mint Java esetében a Maven.
Akkor kezdem az egész PHP "újratanulást" a Composer megismerésével. -
urandom0
senior tag
válasz
.-..-. #21803 üzenetére
Van a PHP-nak erre saját megoldása: https://www.php.net/manual/en/language.oop5.autoload.php
Én a Composer autoloadját szoktam használni, ha használom.
Szigorúan személyes vélemény: az autoloading-nak nagyjából nulla hozzáadott értéke van a projekthez, ugyanakkor pl. verzióváltásnál problémákat okozhat. Sok más nyelvben sincs autoload, és nincs is rá szükség, főleg azért, mert olyan IDE-k vannak manapság, amik simán képesek beimportálni a szükséges függőségeket. De tudom, hogy sokan használnak ilyesmit, és én lebeszélni sem akarok senkit róla, csak elmondtam a véleményem.
-
.-..-.
tag
válasz
urandom0 #21801 üzenetére
urandom0, nevemfel: Köszönöm a tippeket. Igazából mindegyik megoldás jó lehet, az import a lokális hoszton vagy a távoli elérés is.
Más:
Egyelőre egy nagyon egyszerű dolgot csinálok, amolyan "ráhangolódás" célzattal.
Nem szeretnék ehhez framework-ot használni, viszont jó lenne valami Class AutoLoader dolog azért.
Van annak valami bevált módja, hogy könnyen megoldható legyen az osztályok betöltése framework nélkül?
(Keresgélek magam is, de egy bevált megoldás jól jönne tőletek a netes infók mellé)
Új hozzászólás Aktív témák
Hirdetés
- Nintendo Switch 2
- Egyesíti a Google az Android és a ChromeOS rendszereket
- Autóhifi
- PlayStation 5
- Trollok komolyan
- EAFC 25
- Xiaomi 15 - kicsi telefon nagy energiával
- Mibe tegyem a megtakarításaimat?
- Kínai és egyéb olcsó órák topikja
- Újra instabilitásba futott a Raptor Lake generáció
- További aktív témák...
- Több mint 70.000 eladott szoftverlicenc
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RTX 5080 16GB GAMER PC termékbeszámítással
- Epson Workforce DS-530II Dokumentum szkenner
- iKing.Hu - Xiaomi 14 Ultra - Ultra White - Használt, karcmentes
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RTX 4070Ti Super GAMER PC termékbeszámítás
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest