PHP中同一个类读取另一个function的变量
在同一个类中,如何在function A中,调用 function B中的一个变量值来用?
回复讨论(解决方案)
不可能!
请认真阅读手册中关于变量的作用域的描述
可以B中的变量定义的时候设为全局变量,或者你可以用其他方法把值返回给A就可以了
同一个类中要实现只能把变量变成这个类的属性来用
同一个类中要实现只能把变量变成这个类的属性来用
那比如说我A里面要用到 B中的这个值,该怎么办呢 ?
不能,作用域限制了。
如果想都可以读取,可以设为类的全局变量。
类中声明一个属性$c 在方法1中赋值$this->c=A;方法2中直接使用$this->c就可以了。一定要先调用方法1才能够赋值
不能,作用域限制了。
如果想都可以读取,可以设为类的全局变量。
我在类一开始 设置为 public $a; 这样可以吗?
类中声明一个属性$c 在方法1中赋值$this->c=A;方法2中直接使用$this->c就可以了。一定要先调用方法1才能够赋值
声明成什么? 我声明成 public $a; 然后方法1中按你说的赋值,然后方法2读不到。
class T { public $v; function B() { $this->v = 123; } function A() { echo $this->v; }}$p = new T;$p->B();$p->A(); //123
class T { public $v; function B() { $this->v = 123; } function A() { echo $this->v; }}$p = new T;$p->B();$p->A(); //123
如果我这写
class T{public $p;function a{$this->p=1;}function b{echo $this->p;}}
然后我页面进来之后是先读function a 然后再读function b呢?
class T { public $v; function B() { $this->v = 123; } function A() { echo $this->v; }}$p = new T;$p->B();$p->A(); //123
如果我这写
class T{public $p;function a{$this->p=1;}function b{echo $this->p;}}
然后我页面进来之后是先读function a 然后再读function b呢?
这和上面的不是一样的嘛,先赋值,再读取
你认为会是什么情况呢?
如果先 A 再 B 的话,怎么体现 在function A中,调用 function B中的一个变量值来用
class T { function B() { return 123; } function A() { echo $this->B(); }}$p = new T;$p->B();$p->A(); //123
所以,你的基本出发点就是有问题的
class T { public $v; function B() { $this->v = 123; } function A() { echo $this->v; }}$p = new T;$p->B();$p->A(); //123
如果我这写
class T{public $p;function a{$this->p=1;}function b{echo $this->p;}}
然后我页面进来之后是先读function a 然后再读function b呢?
这和上面的不是一样的嘛,先赋值,再读取
刚刚试了这样 然后不知道怎么读了个空值。。
class T { function B() { return 123; } function A() { echo $this->B(); }}$p = new T;$p->B();$p->A(); //123
所以,你的基本出发点就是有问题的
class T{public $p;function a{$this->p=1;}function b{echo $this->p;}}
我写的是这样,其实我要实现的业务逻辑就是,页面进来后,异步读取a方法,然后我在b方法中又需要a方法中那个值,我不清楚我这样写,能不能达到我在b方法中获取a方法中的值
执行 A 和 B 不在同一个 http 会话之中?
那么你这样写就是错误的了!
需要借助其他载体来实现
执行 A 和 B 不在同一个 http 会话之中?
那么你这样写就是错误的了!
需要借助其他载体来实现
就是我页面进来 是A方法,,然后异步用的是B方法,这样就是2个不同回话,变量不能互相拿来用的是吗?
对!不同的会话间是不能共享数据的
所以需要 cookie、session、数据库、文件以及第三方支撑软件

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Laravel vereinfacht die Behandlung von temporären Sitzungsdaten mithilfe seiner intuitiven Flash -Methoden. Dies ist perfekt zum Anzeigen von kurzen Nachrichten, Warnungen oder Benachrichtigungen in Ihrer Anwendung. Die Daten bestehen nur für die nachfolgende Anfrage standardmäßig: $ Anfrage-

Die PHP Client -URL -Erweiterung (CURL) ist ein leistungsstarkes Tool für Entwickler, das eine nahtlose Interaktion mit Remote -Servern und REST -APIs ermöglicht. Durch die Nutzung von Libcurl, einer angesehenen Bibliothek mit Multi-Protokoll-Dateien, erleichtert PHP Curl effiziente Execu

Laravel bietet eine kurze HTTP -Antwortsimulationssyntax und vereinfache HTTP -Interaktionstests. Dieser Ansatz reduziert die Code -Redundanz erheblich, während Ihre Testsimulation intuitiver wird. Die grundlegende Implementierung bietet eine Vielzahl von Verknüpfungen zum Antworttyp: Verwenden Sie Illuminate \ Support \ facades \ http; Http :: fake ([ 'Google.com' => 'Hallo Welt',, 'github.com' => ['foo' => 'bar'], 'Forge.laravel.com' =>

Alipay PHP ...

Möchten Sie den dringlichsten Problemen Ihrer Kunden in Echtzeit und Sofortlösungen anbieten? Mit Live-Chat können Sie Echtzeitgespräche mit Kunden führen und ihre Probleme sofort lösen. Sie ermöglichen es Ihnen, Ihrem Brauch einen schnelleren Service zu bieten

In Artikel wird die in PHP 5.3 eingeführte LSB -Bindung (LSB) erörtert, die die Laufzeitauflösung der statischen Methode ermöglicht, um eine flexiblere Vererbung zu erfordern. Die praktischen Anwendungen und potenziellen Perfo von LSB

In dem Artikel werden Frameworks hinzugefügt, das sich auf das Verständnis der Architektur, das Identifizieren von Erweiterungspunkten und Best Practices für die Integration und Debuggierung hinzufügen.

In Artikel werden wichtige Sicherheitsfunktionen in Frameworks erörtert, um vor Schwachstellen zu schützen, einschließlich Eingabevalidierung, Authentifizierung und regelmäßigen Aktualisierungen.
