Ja ik snap hem ook niet echt hoevaak ik er ook naar kijk xDquote:Op zondag 24 augustus 2014 18:18 schreef remi1986 het volgende:
Wat een vage constructies je hier soms ook tegenkomt
Eerst uit de database een rijtje namen halen, en dan vervolgens aan de class vragen van "hee hoe heet jij?"
Ja.quote:Op zondag 24 augustus 2014 18:02 schreef Monolith het volgende:
[..]
Maar al die classes hebben dus een statig GetName die een bepaalde naam teruggeeft of hoe moet ik het zien?
Klopt. Ik wil niet dat de eindgebruiker rechtstreeks in de HTML-code kan zien hoe de klassen intern heten.quote:Op zondag 24 augustus 2014 18:18 schreef remi1986 het volgende:
Wat een vage constructies je hier soms ook tegenkomt
Eerst uit de database een rijtje namen halen, en dan vervolgens aan de class vragen van "hee hoe heet jij?"
Daar heeft de gebruiker niet zo veel aan hoor.quote:Op zondag 24 augustus 2014 18:26 schreef Igen het volgende:
[..]
Ja.
[..]
Klopt. Ik wil niet dat de eindgebruiker rechtstreeks in de HTML-code kan zien hoe de klassen intern heten.
Ik vond het netjes om het zo te abstraheren. Maar misschien heb je gelijk en is het overbodig. Niet dat de code er veel anders van zou worden, op z'n simpelst zou het zoiets worden:quote:Op zondag 24 augustus 2014 18:38 schreef Monolith het volgende:
[..]
Daar heeft de gebruiker niet zo veel aan hoor.
Dit soort bijzondere constructies zijn ook echt schering en inslag in PHP.
1 2 3 4 5 6 7 | <?php foreach ($childclasses as $classname) { $screenname = call_user_func(array($classname, 'TypeName')); $output .= '<option value="' . $classname . '">' . $screenname . '</option>'; } ?> |
De hele manier waarop je data in de database en de code zelf verwoven lijken te zijn.quote:Op zondag 24 augustus 2014 18:49 schreef Igen het volgende:
[..]
Ik vond het netjes om het zo te abstraheren. Maar misschien heb je gelijk en is het overbodig. Niet dat de code er veel anders van zou worden, op z'n simpelst zou het zoiets worden:
[ code verwijderd ]
Gebruikt nog steeds dezelfde constructies. Welke constructie vind je eigenlijk zo "bijzonder"?
Database? Alles wat ik hier heb gepost heeft niks met databases te maken. Ik ga toch zeker niet met een database verbinding maken om te kijken welke classes mijn broncode kent.quote:Op zondag 24 augustus 2014 19:00 schreef Monolith het volgende:
[..]
De hele manier waarop je data in de database en de code zelf verwoven lijken te zijn.
Sla dan dit soort informatie in zijn geheel op in de database.
Is er iets mis met inheritance?quote:Sowieso heb ik het idee dat hier weer een brij aan inheritance ipv composition wordt gebruikt.
het idee van classes is dat je er objecten van maakt. Een getname functie zou dan logischerwijs betekenen dat je de naam van het desbetreffende object krijgt, en niet de naam van de class.quote:Op zondag 24 augustus 2014 18:49 schreef Igen het volgende:
[..]
Ik vond het netjes om het zo te abstraheren. Maar misschien heb je gelijk en is het overbodig. Niet dat de code er veel anders van zou worden, op z'n simpelst zou het zoiets worden:
[ code verwijderd ]
Gebruikt nog steeds dezelfde constructies. Welke constructie vind je eigenlijk zo "bijzonder"?
De naam van de functie is misschien niet zo handig gekozen.quote:Op zondag 24 augustus 2014 19:50 schreef remi1986 het volgende:
[..]
het idee van classes is dat je er objecten van maakt. Een getname functie zou dan logischerwijs betekenen dat je de naam van het desbetreffende object krijgt, en niet de naam van de class.
Ik heb graag dat eigenschappen van een klasse in die klasse zelf staan en niet ergens in een database.quote:Waarom zet je die screenname niet in de database erbij dan? Scheelt je loopen door al die classes en hoef je ook niet in elke class die functie aan te maken.
Als ik onderstaande code lees dan ga ik er een beetje vanuit dat $this->db->LoadElement iets uit een database laadt en wellicht FindPossibleChildClasses ook nog database interactie bevat. Daarmee leek je dan je inheritance tree ook in je database te hebben staan.quote:Op zondag 24 augustus 2014 19:12 schreef Igen het volgende:
[..]
Database? Alles wat ik hier heb gepost heeft niks met databases te maken. Ik ga toch zeker niet met een database verbinding maken om te kijken welke classes mijn broncode kent.
1 2 3 4 5 | <?php $mod_parent = $this->db->LoadElement($parent_id); $childclasses = $mod_parent->FindPossibleChildClasses($this->options); ?> |
Er is an sich helemaal niets mis met inheritance. Echter lijken veel mensen het onderscheid tussen 'IS-A' and 'HAS-A' relaties niet zo goed te snappen en dat is toch wel een basisconceptje in OOP. Ik kreeg een beetje de indruk dat je in je code b.v. titels of plaatjes b.v. subclasses van pagina's waren.quote:[..]
Is er iets mis met inheritance?
Op zich is het niet vreemd om interfaces (of abstract class, maar die beperk je het liefst tot een minimum m.i.) te hebben.quote:Het hele basisidee van mijn programma is, dat de programmakern alleen maar een abstracte boom van elementen (als interface / abstracte klasse) kent en dat die elementen zelf weten hoe ze zichzelf moeten weergeven. En dat je voor een nieuw soort pagina-inhoud dus alleen een nieuwe interface-implementatie / afgeleide klasse hoeft te maken.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <?php interface myInterface { public static String getName(); } Class A implements myInterface { public static function getName() { echo "A"; } } Class B implements myInterface { public static function getName() { echo "B"; } } function test(myInterface $param) { $param::getName(); } ?> |
1 2 3 4 5 | <?php $classname = 'tpl_' . $classbase; $instance = new $classname; $name = call_user_func(array($instance, 'GetName')); ?> |
Op zich is dat niet verkeerd. Het is wel gebruikelijk om met name in de wat formelere OO talen b.v. interfaces als 'Element' te hebben met een Render() methode die moet worden geïmplementeerd in classes die een dergelijk interface implementeren. Een andere optie is bijvoorbeeld gebruik maken van decorator patterns.quote:Is dat verkeerd of ouderwets?
Mag ik vragen wat het doel is? Want het klinkt alsof je een soort primitieve mailserver wilt implementeren in PHP.quote:Op dinsdag 26 augustus 2014 13:52 schreef webbyplus het volgende:
Hallo,
Ik wil graag een online repository maken voor al mijn ontvangen outlook-mailtjes.
De bedoeling is dat ik mailtjes upload en dat ik een PHP-script heb dat de eigenschappen van de messages uitleest(zoals body, titel, afzender, etc) en in een mysql database zet.
Het upload/mysql stuk gaat me lukken. Ik vraag me alleen af of het mogelijk is om van een .msg file de eigenschappen uit te lezen?
Iemand ervaring mee?
Thx,
Webster
Die Outlook files zijn binary. Zie b.v. hier voor de specs. Afgezien van een volstrekt eigen implementatie, kun je ook gebruik maken van COM.quote:Op dinsdag 26 augustus 2014 13:52 schreef webbyplus het volgende:
Hallo,
Ik wil graag een online repository maken voor al mijn ontvangen outlook-mailtjes.
De bedoeling is dat ik mailtjes upload en dat ik een PHP-script heb dat de eigenschappen van de messages uitleest(zoals body, titel, afzender, etc) en in een mysql database zet.
Het upload/mysql stuk gaat me lukken. Ik vraag me alleen af of het mogelijk is om van een .msg file de eigenschappen uit te lezen?
Iemand ervaring mee?
Thx,
Webster
Foreach en dan bij elke case de waardes uitecho'enquote:Op woensdag 27 augustus 2014 17:42 schreef Adames het volgende:
Even een basisvraag, hopelijk kunnen jullie me helpen. Het hoeft voor mij niet uigeschreven te worden, maar ik kom niet op de juiste zoektermen voor mijn probleem:
Ik wil een pagina/script maken waarmee ik gemakkelijk een database/tabel kan bewerken. Mijn tabel heeft 4 velden, een nummer als PK, een voornaam, achternaam en beschrijving. Wat mij het makkelijkst lijkt als gebruiker is om een dropdown menu te krijgen waarin ik mijn juiste voornaam + achternaam kan selecteren, waarna ik op een knop 'ophalen' klik om zodoende de 3 velden eronder te vullen met de huidige data. Deze velden kan ik dan wijzigen waarna ik op een tweede knop 'wijzigen' klik.
Een tabel leegtrekken in een array lukt nog wel, waarna je ze rij voor rij kan uitlezen. Alleen snap ik niet hoe ik deze informatie in eerste instantie in een case optie in een formulier krijg.
Tis in perl maar je kan er mogelijk inspiratie uithalen.quote:Op dinsdag 26 augustus 2014 13:52 schreef webbyplus het volgende:
Hallo,
Ik wil graag een online repository maken voor al mijn ontvangen outlook-mailtjes.
De bedoeling is dat ik mailtjes upload en dat ik een PHP-script heb dat de eigenschappen van de messages uitleest(zoals body, titel, afzender, etc) en in een mysql database zet.
Het upload/mysql stuk gaat me lukken. Ik vraag me alleen af of het mogelijk is om van een .msg file de eigenschappen uit te lezen?
Iemand ervaring mee?
Thx,
Webster
Mantis?quote:Op zondag 31 augustus 2014 22:28 schreef Robuustheid het volgende:
Is dat voor Laravel?
Ik ben trouwens al tijdje op zoek naar PHP code, voor een stukje applicatie op intranet.
Bij dat applicatie kunnen eindgebruikers hun vragen en opmerkingen posten, waarna hun issues verschijnen op een beheerderslijst, waarna de beheerders erop kunnen reageren, en de issue vervolgens 'sluiten'.
Wat jij beschrijft is toch gewoon precies een bugtracker? Het lijkt me dat er genoeg kant en klare bugtrackers te vinden zijn, eventueel als bundle voor je framework.quote:Op dinsdag 2 september 2014 13:25 schreef Robuustheid het volgende:
[..]
Als dat bij m'n omschrijving aansluit?
gewoon iets simpels als Bugzilla dan?quote:Op dinsdag 2 september 2014 13:25 schreef Robuustheid het volgende:
[..]
Als dat bij m'n omschrijving aansluit?
[..]
Dat is wel te uitgebreid, zie ik.
Volgens mij bedoeld ie een feedback popup, en dat dan inderdaad linken aan je issue tracker naar keuze. Volgens mij een beetje ala https://wordpress.org/plugins/contact-popup/quote:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <?php /** * Catch method call for default endpoints and perform api call if endpoint is set. * * @param $method * @param $parameters * @return mixed */ public function __call($method, $parameters) { if ( ! isset($this->config['endPoints'][$method]) ) { throw new BadFunctionCallException("The method [$method] is not a valid endpoint."); } return $this->bolRequest->makeRequestTo($this->config['endPoints'][$method], $parameters); } ?> |
Het lijkt vrij omslachtig in ieder geval.quote:Op dinsdag 2 september 2014 22:23 schreef TwenteFC het volgende:
Is dit heel smerig om te doen?
[ code verwijderd ]
Hoe bedoel je dit precies?quote:Op woensdag 3 september 2014 08:55 schreef Monolith het volgende:
[..]
Het lijkt vrij omslachtig in ieder geval.
1 2 3 4 | Select title, img_url, deeplink1, displayprice, productcategoryname, `Description_Short` FROM products WHERE `ProductCategoryName` like '%socks%' AND title LIKE '%woman%' |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |