Re: [PHP] Re: Call to object function, want to PHP interpret returned string

2009-07-07 Thread John Allsopp

Stuart wrote:

2009/7/6 John Allsopp j...@johnallsopp.co.uk:
  

David Robley wrote:


John Allsopp wrote:


  

Hi

At the top of a webpage I have:

?php
include_once(furniture.php);
$myFurniture = new furniture();
echo $myFurniture-getTop(my company title);
?

to deliver the first lines of HTML, everything in HEAD and the first
bits of page furniture (menu, etc).

In the furniture object in getTop(), I want to return a string that
includes the CSS file that I call with an include_once. But the
include_once isn't interpreted by PHP, it's just outputted. So from:

   $toReturn = !DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0
Transitional//EN' 
   ?php
   include_once('styles3.txt');
   ?
   ...;

   return $toReturn;

I get

?php
include_once('styles3.txt');
?

in my code.

Do I really have to break up my echo $myFurniture-getTop(my company
title); call to getTopTop, then include my CSS, then call getTopBottom,
or can I get PHP to interpret that text that came back?

PS. I may be stupid, this may be obvious .. I don't program PHP every day

Thanks in advance for your help :-)

Cheers
J



First guess is that your page doing the including doesn't have a filename
with a .php extension, and your server is set to only parse php in files
with a .php extension.



Cheers

  

Ah, thanks. It's a PHP object returning a string, I guess the PHP
interpreter won't see that.

So, maybe my object has to write a file that my calling file then includes
after the object function call. Doesn't sound too elegant, but is that how
it's gotta be?



You appear to be looking for the eval function: http://php.net/eval

However, in 99.99% of cases using eval is not the right solution. In
your case there are two ways to solve it.

The first way, assuming the thing you're trying to include is a
stylesheet, is to use an external link to a CSS file. That would be
the normal way to include a stylesheet in an HTML page and is far
more efficient that including it inline.

If it's not just a stylesheet that you're including then you'll want
to load the file in the getTop method. For example...

$toReturn = !DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0
Transitional//EN' ;
$toReturn.= file_get_contents('styles3.txt');
$toReturn.= '..';

Simple as that.

-Stuart

  
Thanks guys. Yes, actually file_get_contents didn't work for me, and yes 
you're right, of course I should be including my CSS like LINK 
rel='stylesheet' type='text/css' media='screen' href='style3.css' 
title='style1' in the header.


The style3.txt file I was trying to PHP include was there so I could 
include more than one stylesheet and make just one amendment. One for 
printing and I'm guessing one for mobile. All that file contained was 
the LINK... line above.


That was legacy code. Now I have a furniture object, of course, I can 
put my stylesheet code in one place there just as part of the header, 
and have no need for style3.txt.


Thanks for all your help.
J

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] Re: Call to object function, want to PHP interpret returned string

2009-07-06 Thread John Allsopp

David Robley wrote:

John Allsopp wrote:

  

Hi

At the top of a webpage I have:

?php
include_once(furniture.php);
$myFurniture = new furniture();
echo $myFurniture-getTop(my company title);
?

to deliver the first lines of HTML, everything in HEAD and the first
bits of page furniture (menu, etc).

In the furniture object in getTop(), I want to return a string that
includes the CSS file that I call with an include_once. But the
include_once isn't interpreted by PHP, it's just outputted. So from:

$toReturn = !DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0
Transitional//EN' 
?php
include_once('styles3.txt');
?
...;

return $toReturn;

I get

?php
include_once('styles3.txt');
?

in my code.

Do I really have to break up my echo $myFurniture-getTop(my company
title); call to getTopTop, then include my CSS, then call getTopBottom,
or can I get PHP to interpret that text that came back?

PS. I may be stupid, this may be obvious .. I don't program PHP every day

Thanks in advance for your help :-)

Cheers
J



First guess is that your page doing the including doesn't have a filename
with a .php extension, and your server is set to only parse php in files
with a .php extension.



Cheers
  
Ah, thanks. It's a PHP object returning a string, I guess the PHP 
interpreter won't see that.


So, maybe my object has to write a file that my calling file then 
includes after the object function call. Doesn't sound too elegant, but 
is that how it's gotta be?


Cheers
J


--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] Re: Call to object function, want to PHP interpret returned string

2009-07-06 Thread Stuart
2009/7/6 John Allsopp j...@johnallsopp.co.uk:
 David Robley wrote:

 John Allsopp wrote:



 Hi

 At the top of a webpage I have:

 ?php
 include_once(furniture.php);
 $myFurniture = new furniture();
 echo $myFurniture-getTop(my company title);
 ?

 to deliver the first lines of HTML, everything in HEAD and the first
 bits of page furniture (menu, etc).

 In the furniture object in getTop(), I want to return a string that
 includes the CSS file that I call with an include_once. But the
 include_once isn't interpreted by PHP, it's just outputted. So from:

        $toReturn = !DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0
 Transitional//EN' 
            ?php
                include_once('styles3.txt');
            ?
            ...;

        return $toReturn;

 I get

 ?php
 include_once('styles3.txt');
 ?

 in my code.

 Do I really have to break up my echo $myFurniture-getTop(my company
 title); call to getTopTop, then include my CSS, then call getTopBottom,
 or can I get PHP to interpret that text that came back?

 PS. I may be stupid, this may be obvious .. I don't program PHP every day

 Thanks in advance for your help :-)

 Cheers
 J


 First guess is that your page doing the including doesn't have a filename
 with a .php extension, and your server is set to only parse php in files
 with a .php extension.



 Cheers


 Ah, thanks. It's a PHP object returning a string, I guess the PHP
 interpreter won't see that.

 So, maybe my object has to write a file that my calling file then includes
 after the object function call. Doesn't sound too elegant, but is that how
 it's gotta be?

You appear to be looking for the eval function: http://php.net/eval

However, in 99.99% of cases using eval is not the right solution. In
your case there are two ways to solve it.

The first way, assuming the thing you're trying to include is a
stylesheet, is to use an external link to a CSS file. That would be
the normal way to include a stylesheet in an HTML page and is far
more efficient that including it inline.

If it's not just a stylesheet that you're including then you'll want
to load the file in the getTop method. For example...

$toReturn = !DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0
Transitional//EN' ;
$toReturn.= file_get_contents('styles3.txt');
$toReturn.= '..';

Simple as that.

-Stuart

-- 
http://stut.net/

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] Re: Call to object function, want to PHP interpret returned string

2009-07-06 Thread David Robley
John Allsopp wrote:

 David Robley wrote:
 John Allsopp wrote:

   
 Hi

 At the top of a webpage I have:

 ?php
 include_once(furniture.php);
 $myFurniture = new furniture();
 echo $myFurniture-getTop(my company title);
 ?

 to deliver the first lines of HTML, everything in HEAD and the first
 bits of page furniture (menu, etc).

 In the furniture object in getTop(), I want to return a string that
 includes the CSS file that I call with an include_once. But the
 include_once isn't interpreted by PHP, it's just outputted. So from:

 $toReturn = !DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0
 Transitional//EN' 
 ?php
 include_once('styles3.txt');
 ?
 ...;

 return $toReturn;

 I get

 ?php
 include_once('styles3.txt');
 ?

 in my code.

 Do I really have to break up my echo $myFurniture-getTop(my company
 title); call to getTopTop, then include my CSS, then call getTopBottom,
 or can I get PHP to interpret that text that came back?

 PS. I may be stupid, this may be obvious .. I don't program PHP every
 day

 Thanks in advance for your help :-)

 Cheers
 J
 

 First guess is that your page doing the including doesn't have a filename
 with a .php extension, and your server is set to only parse php in files
 with a .php extension.



 Cheers
   
 Ah, thanks. It's a PHP object returning a string, I guess the PHP
 interpreter won't see that.
 
 So, maybe my object has to write a file that my calling file then
 includes after the object function call. Doesn't sound too elegant, but
 is that how it's gotta be?
 
 Cheers
 J
I think I misunderstood your explanation :-) Can you show the actual content
of furniture.php? I wonder if there are missing ?php ? tags??



Cheers
-- 
David Robley

And it's only ones and zeros.
Today is Boomtime, the 41st day of Confusion in the YOLD 3175. 


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php