مشکل تغییر نکردن متغیر در php
#1
Note 
سلام من یه تابع ساده نوشتم که اسمو میگیره و یه hello بهش اضافه میکنه ولی در نهایت تعجب مقدار متغیر تغییر نمیکنه من قبلا انجام دادم کار میکرد!

کد
کد php:
<?php
function hello($name)
{
    
$name'hello '.$name;
}
$tname="trofun";
hello($tname);
echo 
$tname;
?>
خروجی trofun میده بازم!
گیج شدم لطفا کمک کنید!

پاسخ
#2
Note 
سلام
احتمالا کدشما اینطوری نبوده این کد غیر ممکنه بجز مقدار اولیه متغیر name$ چیز دیگه ای نشون بده!

باید یکی از کارهای زیر رو اجرا کنید:

1- by reference کردن پارامتر(passed by reference):
درحالت عادی پارامترها by value هستن یعنی وقتی مقدار آرگومان ها در داخل متغیر تغیر کنه مقدار متغیرهای بیرون از تابع تغییر نمیکنه.
اگر بخوایم کاری کنیم که مقدارشون تغیر کنه باید پارامتر رو by reference کنید، برای by reference کردن کافیه یه علامت امپرسند(&) قبل از پارامتر بذارید:


کد php:
<?php
function hello(&$name)
{
//------------^
    
$name'hello '.$name;
}
$tname="trofun";
hello($tname);
echo 
$tname;
?>
PHP code - 9 lines - codepad


2- echo کردن هنگام فراخوانی


کد php:
<?php
function hello($name)
{
    
$name'hello '.$name;
    return 
$name;
}
$tname="trofun";
echo 
hello($tname);
?>
PHP code - 9 lines - codepad



3- echo کردن در داخل تابع

کد php:
<?php
function hello($name)
{
    echo 
$name'hello '.$name;
}
$tname="trofun";
hello($tname);
//echo $tname;
?>
PHP code - 9 lines - codepad



4-استفاده از GLOBAL
کد php:
<?php
function hello()
{global 
$tname;
    
$tname'hello '.$tname;
}
$tname="trofun";
hello();
echo 
$tname;
?>
PHP code - 9 lines - codepad


احتمالا کدی که قبلا اجرا کردید یکی از مثالهای بالا بوده.
موفق باشید.

پاسخ
ایجاد موضوع جدید   پاسخ به موضوع  

موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  نشناختن متغیر در View در CodeIgniter Babak98 1 600 28-07-2015 ساعت 20:30
آخرین ارسال: PHP.sec
Note چطور یک متغیر شامل چند ارایه رو با حلقه foreach پیمایش کنیم mahbobe.prog 10 1,397 01-10-2014 ساعت 20:11
آخرین ارسال: PHP.sec
Note مشکل با متغیر در داخل تابع در php Ramin000 1 329 06-08-2014 ساعت 19:08
آخرین ارسال: Daniel
Note تغییر عکس به صورت اسلاید اسلاید pirzad_7@yahoo. 2 357 09-07-2014 ساعت 11:30
آخرین ارسال: pirzad_7@yahoo.
Note Escape کردن کل متغیر POST_$ mostafa2 1 367 12-05-2014 ساعت 13:58
آخرین ارسال: Daniel
Note php: تغییر نام فایل قبل از اپلود IranPhp 1 293 04-05-2014 ساعت 17:00
آخرین ارسال: REza mAX
Note جدا کردن فرمت فایل و ذخیره در متغیر در Php Php1 1 361 02-11-2013 ساعت 13:30
آخرین ارسال: Behnam Designer
Note php ظاهرش رو تغییر داد Stack OverFlow 0 269 10-07-2013 ساعت 16:09
آخرین ارسال: Stack OverFlow
Note تغییر Collation تمام Table های یک دیتابیس SOFTAFZAR 0 464 07-02-2013 ساعت 20:01
آخرین ارسال: SOFTAFZAR
Note PHP-دستور زبان و کار با متغیرها THE KNIGHT 0 380 12-11-2012 ساعت 20:05
آخرین ارسال: THE KNIGHT

کاربرانِ درحال بازدید از این موضوع:   1 مهمان