Search Results

Search found 3120 results on 125 pages for 'php5 oop'.

Page 52/125 | < Previous Page | 48 49 50 51 52 53 54 55 56 57 58 59  | Next Page >

  • How to access constant defined in child class from parent class functions?

    - by kavoir.com
    I saw this example from php.net: <?php class MyClass { const MY_CONST = "yonder"; public function __construct() { $c = get_class( $this ); echo $c::MY_CONST; } } class ChildClass extends MyClass { const MY_CONST = "bar"; } $x = new ChildClass(); // prints 'bar' $y = new MyClass(); // prints 'yonder' ?> But $c::MY_CONST is only recognized in version 5.3.0 or later. The class I'm writing may be distributed a lot. Basically, I have defined a constant in ChildClass and one of the functions in MyClass (father class) needs to use the constant. Any idea?

    Read the article

  • Refactoring huge if ( ... instanceof ...)

    - by Chris
    I'm currently trying to refactor a part of a project that looks like this: Many classes B extends A; C extends A; D extends C; E extends B; F extends A; ... And somewhere in the code: if (x instanceof B){ B n = (B) x; ... }else if (x instanceof C){ C n = (C) x; ... }else if (x instanceof D){ D n = (D) x; ... }else if (x instanceof E){ E n = (E) x; ... }else if (x instanceof G){ G n = (G) x; ... }... Above if-construct currently sits in a function with a CC of 19. Now my question is: Can I split this if-construct up in mutliple functions and let Java's OO do the magic? Or are there any catches I have to look out for? My idea: private void oopMagic(C obj){ ... Do the stuff from the if(x instanceof C) here} private void oopMagic(D obj){ ... Do the stuff from the if(x instanceof D) here} private void oopMagic(E obj){ ... Do the stuff from the if(x instanceof E) here} .... and instead of the huge if: oopMagic(x);

    Read the article

  • How to iterate over numerically named object properties

    - by Scott Schluer
    So I have a horribly designed class that I can't change that has properties like this: object.Color1 object.Color2 object.Color3 etc... How can I iterate through those with a for loop. In other words, something like this: for (int i = 0; i <= 40; i++) { string PropertyName = "Color" + i; if (object.PropertyName != "") { // do something } } Obviously this code wouldn't work but it gives you an idea of what I'm after. I have to do some processing on each property and I don't want to repeat my code 40 times. :) A loop would be perfect, I'm just not sure how to create the name of the property on the fly.

    Read the article

  • Using Zend_Db and multiple tables

    - by Yacoby
    I have a normalized database that stores locations of files on the internet. A file may have multiple locations spread across different sites. I am storing the urls in two parts (Site.UrlStart, FileLocation.UrlEnd). The UrlEnd is the part unique to that file (for the site). Simplified Db structure: I am using Zend_Db as my ORM (If it is that), with classes for the tables inheriting from Zend_Db_Table_Abstract. The issue is that retrieving the location data (e.g. the url) requires the use of multiple tables and as far as I can make out and I would either have to use both table classes (thereby exposing my table structure) or scatter sql all over my application, neither of which sound appealing. The only solution I can see is to create a façade that acts like Zend_Db_Table_Abstract (Maybe inherits from it?) and hides the fact that the data is actually on two tables. My questions are as follows: Am I going in the right direction in creating a façade class (Are there other alternatives)? Should the facade class inherit from Zend_Db_Table_Abstract?

    Read the article

  • pass variable by reference within class? in php

    - by user151841
    I'm working on a hex color class where you can change the color values of any hex code color. In my example, I haven't finished the hex math, but it's not completely relevant to what I'm explaining here. Naively, I wanted to start to do something that I don't think can be done. I wanted to pass object properties in a method call. Is this possible? class rgb { private $r; private $b; private $g; public function __construct( $hexRgb ) { $this->r = substr($hexRgb, 0, 2 ); $this->g = substr($hexRgb, 2, 2 ); $this->b = substr($hexRgb, 4, 2 ); } private function add( & $color, $amount ) { $color += amount; // $color should be a class property, $this->r, etc. } public function addRed( $amount ) { self::add( $this->r, $amount ); } public function addGreen( $amount ) { self::add( $this->g, $amount ); } public function addBlue( $amount ) { self::add( $this->b, $amount ); } } If this is not possible in PHP, what is this called and in what languages is it possible? I know I could do something like public function add( $var, $amount ) { if ( $var == "r" ) { $this->r += $amount } else if ( $var == "g" ) { $this->g += $amount } ... } But I want to do it this cool way.

    Read the article

  • Any method to denote object assignment?

    - by Droogans
    I've been studying magic methods in Python, and have been wondering if there's a way to outline the specific action of: a = MyClass(*params).method() versus: MyClass(*params).method() In the sense that, perhaps, I may want to return a list that has been split on the '\n' character, versus dumping the raw list into the variable a that keeps the '\n' intact. Is there a way to ask Python if its next action is about to return a value to a variable, and change action, if that's the case? I was thinking: class MyClass(object): def __init__(*params): self.end = self.method(*params) def __asgn__(self): return self.method(*params).split('\n') def __str__(self): """this is the fallback if __asgn__ is not called""" return self.method(*params)

    Read the article

  • Best way to make an attribute always an array?

    - by Shadowfirebird
    I'm using my MOO project to teach myself Test Driven Design, and it's taking me interesting places. For example, I wrote a test that said an attribute on a particular object should always return an array, so -- t = Thing.new("test") p t.names #-> ["test"] t.names = nil p t.names #-> [] The code I have for this is okay, but it doesn't seem terribly ruby to me: class Thing def initialize(names) self.names = names end def names=(n) n = [] if n.nil? n = [n] unless n.instance_of?(Array) @names = n end attr_reader :names end Is there a more elegant, Ruby-ish way of doing this? (NB: if anyone wants to tell me why this is a dumb test to write, that would be interesting too...)

    Read the article

  • One-to-One relation classes

    - by SeyZ
    I want to have a class named ProjectDirectory and a class named MetaDirectory. Each project has a MetaDirectory which contains some meta data. Is it the good way to write the classes like this: class ProjectDirectory(object): def __init__(self, directory=None): self.directory = directory self.meta_directory = MetaDirectory(self) def __repr__(self): return self.directory class MetaDirectory(object): def __init__(self, project_directory=None): self.project_directory = project_directory self.directory = "%s/.meta/" % project_directory ProjectDirectory has a reference to MetaDirectory and MetaDirectory has a reference to ProjectDirectory. Is there an other solution or this solution is good ?

    Read the article

  • Is it possible for a parent to use a child's constant or static variables from inside a static metho

    - by ryeguy
    Below is an example of what I'm trying to do. The parent can't access any of the child's variables. It doesn't matter what technique I use (static or constants), I just need some kind of functionality like this. class ParentClass { public static function staticFunc() { //both of these will throw a (static|const) not defined error echo self::$myStatic; echo self::MY_CONSTANT; } } class ChildClass extends ParentClass { const MY_CONSTANT = 1; public static $myStatic = 2; } ChildClass::staticFunc();

    Read the article

  • Class member variables, methods and their state

    - by codeMonkey
    How should class member variables be used in combination with class methods? Let's say I have a class 'C' with a member variable 'someData'. I call C.getData(), which does not return a value but instead puts data in C.someData. The class that instantiated 'C' first calls C.getData and then uses the data by accessing the member variable C.someData. I call C.getData() in the class that instantiated 'C' which is a function that returns data. I myself prefer the second way. But it also depends on the situation and it's a small difference. Is it 'bad' to have class methods that depend on the classes internal state? What are the best conventions?

    Read the article

  • How to structure a bigger/complicated project?

    - by Per
    Hello, I'm creating this (big?) project in high school where I'm programming the game Shithead (card game) (so that two people can play against eachother). I'll use mostly PHP, MySQL, JavaScript and Ajax. But I have never made a project like this before. I have only made like CMS-systems and so on. Do you guys have any tips on how I should structure this project? I'm also not so used to Object-oriented programming, but I guess I should consider this. Should I, for example, make a class for the cards? I'm very thankful for any tips or good links!

    Read the article

  • [[alloc] init] as a factory method

    - by iter
    I want to initialize an instance of one of the subclasses of a superclass depending on the arguments to init: [[Vehicle alloc] initWithItinerary: shortWay]; // returns a bicycle [[Vehicle alloc] initWithItinerary: longWay]; // returns a car I can't find examples of code like this. I wonder if this is not idiomatic in Objective C, or I simply am not looking in the right places.

    Read the article

  • C++ Beginner - Simple block of code crashing, reason unknown.

    - by Francisco P.
    Hello everyone, Here's a block of code I'm having trouble with. string Game::tradeRandomPieces(Player & player) { string hand = player.getHand(); string piecesRemoved; size_t index; for (size_t numberOfPiecesToTrade = rand() % hand.size() + 1; numberOfPiecesToTrade != 0; --numberOfPiecesToTrade) { index = rand() % hand.size(); piecesRemoved += hand[index]; hand.erase(index,1); } player.removePiecesFromHand(piecesRemoved); player.fillHand(_deck); return piecesRemoved; } I believe the code is pretty self explanatory. fillhand and removepiecesfromhand are working fine, so that's not it. I really can't get what's wrong with this :( Thanks for your time

    Read the article

  • Get data from Joomla jos_users table

    - by RobertR
    Hello, world! I'm trying to build a little bit advanced users system using Joomla, but I stuck at one spot. I added new field on Joomla's jos_users table, but when I wanted to get that field out, like "echo" - it didn't worked at all. Any other data, even password field I can get without problems. Of course, I added new value in /var/www/<project>/libraries/joomla/user/user.php like this after line 40. /** * The users address name * @var string */ var $address = null; What might be the problem here? Or what I did wrong, or what I didn't do at all? Thanks for replies! Cheerio

    Read the article

  • What pattern is this? php

    - by user151841
    I have several classes that are basically interfaces to database rows. Since the class assumes that a row already exists ( __construct expects a field value ), there is a public static function that allows creation of the row and returns an instance of the class. Here's an example ( without the actual database inserts ): class selfStarter { public $type; public function __construct( $type ) { $this->type = $type; } public static function create( $type ) { if ( ! empty($type) ) { $starter = & new selfStarter($type); return $starter; } } } $obj1 = selfStarter::create( "apple" ); $obj2 = & new selfStarter( "banana" ); What is this pattern called?

    Read the article

  • JavaScript prototype(ing) question

    - by OneNerd
    Trying to grasp Prototyping in Javascript. Trying to create my own namespace to extend the String object in JavaScript. Here is what I have so far (a snippet): var ns { alert: function() { alert (this); } } String.prototype.$ns = ns; As you can see, I am trying to place what will be a series of functions into the ns namespace. So I can execute a command like this: "hello world".$ns.alert(); But the problem is, the this doesn't seem to reference the text being sent (in this case, "hello world"). What I get is an alert box with the following: [object Object] Not having a full grasp of the object-oriented nature of JavaScript, I am at a loss, but I am guessing I am missing something simple. Does anyone know how to achieve this? Thanks -

    Read the article

  • Constructors + Dependency Injection

    - by Sunny
    If I am writing up a class with more than 1 constructor parameter like: class A{ public A(Dependency1 d1, Dependency2 d2, ...){} } I usually create a "argument holder"-type of class like: class AArgs{ public Dependency1 d1 { get; private set; } public Dependency2 d2 { get; private set; } ... } and then: class A{ public A(AArgs args){} } Typically, using a DI-container I can configure the constructor for dependencies & resolve them & so there is minimum impact when the constructors need to change. Is this considered an anti-pattern and/or any arguments against doing this?

    Read the article

< Previous Page | 48 49 50 51 52 53 54 55 56 57 58 59  | Next Page >