Имам 2 въпроса:
1. Как да прехвърля стойност на променлива извън клас към променлива/атрибут на клас?
2. Защо в кода по-долу не мога на атрибута $content на клас page да присвоя стойност, зададена от форма
(При следния код излиза грешка от тип "unexpected T_VARIABLE"):idea:
var $content=$_POST['filename']; //не работи
var $content=getc($_POST['filename']); //не работи
но всичко е ОК при
//метод на класа page
function DisplayContent(){
echo "<p>".getc($_POST['filename'])."</p>"; //работи
}
или
SetContent(getc($_POST['filename']));
Формата е:
1. Как да прехвърля стойност на променлива извън клас към променлива/атрибут на клас?
2. Защо в кода по-долу не мога на атрибута $content на клас page да присвоя стойност, зададена от форма
(При следния код излиза грешка от тип "unexpected T_VARIABLE"):idea:
var $content=$_POST['filename']; //не работи
var $content=getc($_POST['filename']); //не работи
но всичко е ОК при
//метод на класа page
function DisplayContent(){
echo "<p>".getc($_POST['filename'])."</p>"; //работи
}
или
SetContent(getc($_POST['filename']));
PHP:
<?php
$filename=$_POST['filename'];
global $filename;
function getc($filename){
@$handle=fopen($filename, 'r') or die('Can\'t fopen');
$contents=fread($handle,filesize($filename)) or die ('Can\'t fread');
return $contents;
fclose($filename) or die ('Can\'t fclose');}
class Page{
var $content;
//var $content=getc($_POST['filename']);
//var $content=getc($filename);
//var $content=$_POST['filename'];
function SetContent($newcontent){
$this->content=$newcontent;
}
function DisplayContent(){
echo "<p>".$this->content."</p>";
//echo "<p>".getc($_POST['filename'])."</p>"; //работи
}
function Display()
{
$this->SetContent(getc($_POST['filename']));
$this->DisplayContent();
//
}
}
$a=new page();
$a->Display();
?>
HTML:
<form action='' method='POST'>
<input type='file' name='filename' />
<input type='submit' />
</form>