[PHP] ท่านใด พอมีวิธี เรียกใช้ตัวแปล ใน function แทน global บ้างไหมครับ

เริ่มโดย mean, 25 พฤศจิกายน 2013, 16:12:45

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

mean

ผมไม่แน่ใจ พอมีท่านใด มีวิธี นำตัวแปลต่างๆ ที่อยู่นอก function
ไปเรียกใช้โดยไม่เรียกผ่าน  global บ้างไหมครับ ไม่แน่ใจทำได้ไหม

เช่น

$STR = "I LOVE U";

function SHOW(){
  echo $STR;
}

OUTPUT ที่ต้องการ
I LOVE U;

ขอบคุณครับ


[direct=https://www.ireallyhost.com/]บริการโดเมน, เว็บโฮสติ้ง, SSL Certificate[/direct]
[direct=https://www.ireallyhost.com/ssl]บริการ SSL Certificate , HTTPS สำหรับเว็บไซต์[/direct]
[direct=https://www.ireallyhost.com/]บริการ Web Hosting Free! Domain name ตลอดอายุบริการ [/direct]
[direct=https://www.ireallyhost.com/domain]บริการ จดโดเมน, Free DNS Service, Domain Forwarding, จัดการโดเมนได้เอง Domain Control Panel[/direct

adidog

ตอบตามความรู้ที่มีอยู่อันนี้นิดว่า เป็นไปไม่ได้ครับ

อ้างอิงจาก

http://php.net/manual/en/language.variables.scope.php
Certain Dri [direct=http://www.ishiclub.com/]Certain Dri[/direct]
คุณแม่มือใหม่ [direct=http://www.mamyget.com/]คุณแม่มือใหม่[/direct]

max30012540



AFRO

รับทำเว็บไซต์ ระบบราชการ ระบบ VIP ระบบเครดิต เติมเงิน auto
Laravel,react
line : tuyosera


smapan

[direct=http://cp.siamhostweb.com/cart.php?gid=1]จูมล่าโฮส สยามโฮสเว็บ[/direct] [direct=http://www.modty.com]modty.com[/direct]
[direct=http://www.apartment.in.th]รวมที่พัก เช่ารายวัน ที่พักเช่ารายเดือนมากที่สุดแจ่มจริง[/direct]
***Tel 083-757-1515 ติดปัญหา Joomla ตรงไหนรับปรึกษาฟรี โทรมาเถอะครับ ถ้าตอบได้ช่วยแน่นอน ไม่มีกั้ก. ***

hurahura

ใช้ SESSION แบบนี้ข้างบนว่า


$_SESSION['STR'] = "I LOVE U";

function SHOW(){
  echo $_SESSION['STR'];
}

SHOW();

Level UP!

รับเขียนโปรแกรม เขียนเว็บไซต์ ออกแบบระบบ Script บลาๆ ภาษา C#.net MVC , PHP , SQL , MySQL , Jquery , Ajax สนใจ pm ครับ
โทร 085-333-282เจ็ด (18.00-21.00)
[direct=http://www.ajantee.com/]ใบ้หวย[/direct][direct=http://www.ajantee.com/]เก็งหวย[/direct][direct=http://www.ajantee.com/]เลขเด็ด[/direct][direct=http://www.ajantee.com/]เลขเด่น[/direct][direct=http://www.ajantee.com/]อาจารย์ตี๋[/direct]

nagis


icez

$GLOBALS['STR']


ไม่รู้ว่าใช้ได้มั้ย ลองเรียกประมาณนี้ดู

อ้างถึงจาก: mean ใน 25 พฤศจิกายน 2013, 16:12:45
$STR = "I LOVE U";

function SHOW(){
  echo $GLOBALS['STR'];
}



http://php.net/manual/en/reserved.variables.globals.php
[direct=http://www.thzhost.com/]THZHost[/direct] SSD Hosting ไทย/สิงคโปร์ พร้อม firewall ป้องกันการยิงเว็บ + scan ไวรัสในเว็บ

nuvatchai

อ้างถึงจาก: icez ใน 26 พฤศจิกายน 2013, 09:15:05
$GLOBALS['STR']


ไม่รู้ว่าใช้ได้มั้ย ลองเรียกประมาณนี้ดู

อ้างถึงจาก: mean ใน 25 พฤศจิกายน 2013, 16:12:45
$STR = "I LOVE U";

function SHOW(){
  echo $GLOBALS['STR'];
}



http://php.net/manual/en/reserved.variables.globals.php

ยืนยันว่าได้ครับ

$STR = "I LOVE U";

function SHOW(){
  echo $GLOBALS['STR'];
}
echo SHOW();

mean

ขอบคุณทุกคนมากครับ

จริงๆ ไม่แนะนำให้ทำการ เรียกใช้ global variable กันครับ
เพราะเป็นการเข้าถึงค่า และเปลี่ยนแปลงค่า ที่ช้ากว่า static variable
(ส่วนตัวที่ลอง test)

เช่น หากเรียกใช้ $GLOBALS['STR']++;
แบบนี้จะเสีย time มากทีเดียวครับ

และหลายๆ บทความก็เขียนไว้เช่นนั้นครับ : )

ขอบคุณทุกท่านที่ร่วมแบ่งปันครับ ^^




[direct=https://www.ireallyhost.com/]บริการโดเมน, เว็บโฮสติ้ง, SSL Certificate[/direct]
[direct=https://www.ireallyhost.com/ssl]บริการ SSL Certificate , HTTPS สำหรับเว็บไซต์[/direct]
[direct=https://www.ireallyhost.com/]บริการ Web Hosting Free! Domain name ตลอดอายุบริการ [/direct]
[direct=https://www.ireallyhost.com/domain]บริการ จดโดเมน, Free DNS Service, Domain Forwarding, จัดการโดเมนได้เอง Domain Control Panel[/direct

zenon

*-*

icez

อ้างถึงจาก: mean ใน 26 พฤศจิกายน 2013, 13:35:52
ขอบคุณทุกคนมากครับ

จริงๆ ไม่แนะนำให้ทำการ เรียกใช้ global variable กันครับ
เพราะเป็นการเข้าถึงค่า และเปลี่ยนแปลงค่า ที่ช้ากว่า static variable
(ส่วนตัวที่ลอง test)

เช่น หากเรียกใช้ $GLOBALS['STR']++;
แบบนี้จะเสีย time มากทีเดียวครับ

และหลายๆ บทความก็เขียนไว้เช่นนั้นครับ : )

ขอบคุณทุกท่านที่ร่วมแบ่งปันครับ ^^



ก็อย่าเขียนให้ใช้อะไรพิสดารแบบนี้แต่แรกเซ่ 555+
[direct=http://www.thzhost.com/]THZHost[/direct] SSD Hosting ไทย/สิงคโปร์ พร้อม firewall ป้องกันการยิงเว็บ + scan ไวรัสในเว็บ

goldxp


<?php
namespace Config{
    class 
Data{
        public static 
$s 100;
    }
}

namespace 
Test{
    use 
Config\Data as config;
    
call_user_func(function(){
        echo 
config::$s;
    });
}


ใช้ static properties แทน global var ก็ได้ครับ
[direct=http://web-programming-bookmark.blogspot.com/p/blog-page.html]รับแก้ไขเว็บ[/direct]