PDA

View Full Version : نظر راجع به یک کد



14morteza14
جمعه 17 آبان 1392, 21:24 عصر
ممنون می شم دوستان کار بلد بگند این کد چرا اجرا نمی شه و خروجی نداره:




<?php
class test
{
var $a;
function set() {

$this -> a=100;
}
function display() {
echo “Variable is:”.$this -> a;
}
}
?>

hamedarian2009
جمعه 17 آبان 1392, 21:50 عصر
سلام اولین اشکالتون اینه که تعریف متغیر رو تو php با جاوا اسکریپت اشتباه گرفتین کدتون رو اصلاح کردم


<?php
class test
{
private $a;

public function set() {
$this -> a=100;
}

public function display() {
echo "Variable is:".$this -> a;
}
}
?>

نحوه فراخوانی اونم اینطوری بنویس:


<?php
$test = new test();
$test -> set();
$test -> display();
?>

14morteza14
جمعه 17 آبان 1392, 21:56 عصر
ممنون
اما کدی که شما نوشتین تو اجراش خطا می ده !

hamedarian2009
جمعه 17 آبان 1392, 22:02 عصر
کد رو تست کردم مشکلی نداشت شما چطوری از کد اجرا می گیرید؟

14morteza14
جمعه 17 آبان 1392, 22:09 عصر
با برنامه dzsoft اجرا کردم خطا داد. با سرور xampp هم چک کردم خطا داد.

hamedarian2009
جمعه 17 آبان 1392, 22:55 عصر
با برنامه dzsoft اجرا کردم خطا داد. با سرور xampp هم چک کردم خطا داد.
مشکل از کدها نیست بهتره پیغام خطایی که میده رو بزارین تا بتونیم کمکتون کنیم

ابوذر محمودی
یک شنبه 19 آبان 1392, 07:40 صبح
ممنون
اما کدی که شما نوشتین تو اجراش خطا می ده !

کدی که دوستمون گذاشتن خطا نمیده .
اینو با چشم هم نگاه کنید می فهمید که خطا نمیده ، دیگه این مثال چیزی در حد Hello World! هست ، بهتره ابتدا یکم در مورد کلاس ها و نحوه استفاده از اونها مطالعه کنید.
این کد رو مستقیم تو فایلتون قرار بدین و خروجی رو مشاهده کنین.
قبلش پیغام خطایی که میگین رو بذارین تا مشکل کارتونو بفهمیم کجا بوده.


<?php
class test
{
private $a;

public function set() {
$this -> a=100;
}

public function display() {
echo "Variable is:".$this -> a;
}
}
?>
<?php
$test = new test();
$test -> set();
$test -> display();
?>

و اما این:

ممنون می شم دوستان کار بلد بگند این کد چرا اجرا نمی شه و خروجی نداره:




<?php
class test
{
var $a;
function set() {

$this -> a=100;
}
function display() {
echo “Variable is:”.$this -> a;
}
}
?>



به این دلیل که باید اول یک شی از این کلاس ایجاد کنی ، توسط اون شی ، توابعی که در کلاس تعریف کردیو فراخوانی کنی.

$obj=new test();
$obj->set();
$obj->display();

تعریف متغیرهاتونم با private انجام بدین تا بیرون از کلاس مستقیماَ مقدار دهی نشن.
توابع رو هم مشخص کنید private هست یا public یا ...