Vet inte någon svar på fråga 2 i alla fall?
Hejsan!
Jag har precis gjort denna koden nedan klar och vill nu ha tips på om jag kan förbättra något innan jag fortsätter med mera.
class Page {
var $dtd;
var $title;
var $head;
var $body;
function __construct() {
$this->dtd = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">";
}
function setTitle($what){
$this->title = $what;
}
function getTitle(){
return $this->title;
}
function addTextInHead($data) {
$this->head[count($this->head)] = $data;
}
function eraseTextInHead($which) {
if(!is_numeric($which) || (!isset($this->head[$which]))) {
return;
}
unset($this->head[$which]);
}
function eraseAllTextInHead(){
$this->head = "";
}
function getTextInHead($which) {
if(!is_numeric($which) || (!isset($this->meta[$which]))) {
return;
}
return $this->meta[$which];
}
function getAllTextInHead(){
$ret;
foreach($this->head as $value){
$ret = $ret . $value;
}
return $ret;
}
function __toString() {
$ret = $this->dtd . "\n";
$ret = $ret . "<html>\n";
$ret = $ret . "<head>\n";
if(isset($this->title)){
$ret = $ret . "<title>" . $this->title . "</title>\n";
}
if(!empty($this->head)){
foreach($this->head as $value){
$ret = $ret . $value;
}
$ret = $ret . "\n";
}
$ret = $ret . "</head>\n";
$ret = $ret . "<body>\n";
$ret = $ret . $this->body . "\n";
$ret = $ret . "</body>\n";
$ret = $ret . "</html>\n";
return $ret;
}
}
class XPage {
var $page;
var $col1_text;
var $col2_text;
function __construct() {
$this->page=new Page();
date_default_timezone_set("Europe/Stockholm"); //så date funkten i updateBdy i Xpage inte får några varningar...
$this->updateBody();
}
function addTextInCol1($text){
if(empty($text)){
return;
}
$this->col1_text[count($this->col1_text)] = $text;
$this->updateBody();
}
function addTextInCol2($text){
if($text == ""){
return;
}
$this->col2_text[count($this->col2_text)] = $text;
$this->updateBody();
}
function eraseTextInCol1($which){
if(!is_numeric($which) || (!isset($this->col1_text[$which]))){
return;
}
unset($this->col1_text[$which]);
}
function eraseTextInCol2($which){
if(!is_numeric($which) || (!isset($this->col2_text[$which]))){
return;
}
unset($this->col2_text[$which]);
}
function getCol1Text($which){
if(!isset($this->col1_text[$which])){
return;
}
return $this->col1_text[$which];
}
function getAllCol1Text(){
$ret = "";
foreach($this->col1_text as $value){
$ret = $ret . $value;
}
return $ret;
}
function getCol2Text($which){
if(!isset($this->col2_text[$which])){
return;
}
return $this->col2_text[$which];
}
function getAllCol2Text(){
$ret = "";
foreach($this->col2_text as $value){
$ret = $ret . $value;
}
return $ret;
}
function __toString() {
return $this->page->__toString();
}
function updateBody(){
$this->page->body = "<div id=\"header\">\n<h1>Welcome</h1>\n</div>\n";
$this->page->body = $this->page->body . "<div id=\"wrapper\">\n";
$this->page->body = $this->page->body . "<div class=\"coloum one\">\n";
if(!empty($this->col1_text)){
foreach($this->col1_text as $value){
$this->page->body = $this->page->body . $value;
}
}
$this->page->body = $this->page->body . "\n</div>\n";
$this->page->body = $this->page->body . "<div class=\"coloum two\">\n";
if(!empty($this->col2_text)){
foreach($this->col2_text as $value){
$this->page->body = $this->page->body . $value;
}
}
$this->page->body = $this->page->body . "\n</div>\n";
$this->page->body = $this->page->body ."</div>\n";
$this->page->body = $this->page->body . "<div id=\"bottom\">\nCopyright © " . date("Y",time()) . " " . $_SERVER["HTTP_HOST"];
}
}
function str_exist_in($str,$exist){
if(gettype($str) != "string" || gettype($exist) != "string"){
return;
}
for($i=0;$i<strlen($str);$i++){
if($str[$i] == $exist[0]){
if($exist == substr($str,$i,strlen($exist))){
return true;
}
}
}
return false;
}
function CssLink($in){
return "<link type=\"text/css\" rel=\"stylesheet\" href=\"" . $in . "\" />";
}
function JavascriptLink($in){
return "<script src=\"" . $in . "\" />";
}
Håller nämligen just nu på att försöka lära mig php och vill gärna lära mig programmera bra php kod i början innan det kommer som en vana liksom. Är jag på rätt väg fressten?
Fråga 2:
Vad är det för skillnad på att skriva:
var $something;
mot bara
$something;
Har nämligen inte riktigt fattat det :(
Mycket Tacksam för svar
Tack på förhand!
