为什么我不能通过A类的动态属性来调用B类的常量,就像这样?我做错了什么吗?
class A {
public $class_b;
}
class B {
const CONST_VAR = 'b';
}
$class_a = new A();
$class_a->class_b = new B();
echo $class_a->class_b::CONST_VAR;
PHP分析错误:语法错误,意外根,第14行的/ T_PAAMAYIM_NEKUDOTAYIM /1.php中应为',‘或';’
然而,这样命名是很好的:
$b =
我正在尝试使用现有的Java应用程序,特别是用于生成密钥代码的公式,并将其转换为PHP函数,以便可以在web服务器上动态生成许可证密钥。
我遇到了将Java指令转换为PHP函数的问题。谁能给我解释一下这两行代码是做什么的?
public static final long KEY = 0xb2a3453282e55938L;
long no = Long.parseLong(sNo);
我正在学习PHP,刚刚遇到了这种定义常量的方法,但并没有在文件中对它们进行物理编码。我猜就像所有的变量一样,这些动态创建的变量只在代码运行时存在。我正在寻找一些关于这是如何工作的解释。
//or we can put them in an associated array
$db['db_host'] = "localhost";
$db['db_user'] = "root";
$db['db_pass'] = "";
$db['db_name'] = "cms";
我正在处理一个类,在这个类中,我试图撤回一种在PHP中动态设置__FUNCTION__神奇常量的方法。
代码到目前为止
<?php
class TestFunction {
var $method = __FUNCTION__;
public function __construct() {
}
public function testMethod() {
return $this->method;
}
}
不起作用..。我不确定这是否可能..。只是想跳出
我正在致力于将旧的define()-based语言/转换系统转换为更灵活的语言/翻译系统(可能基于JSON语言,但它仍然是开放的)。
作为这个转换的一部分,我需要从42个.php文件转换成我将要使用的任何格式,每个文件包含数千个字符串。一些已定义的字符串引用其他定义或使用PHP代码。我不需要保持这种动态行为(它从来都不是真正的动态行为),但我需要在转换时拥有“当前”值。其中一个定义可能如下所示:
define('LNG_Some_string', 'Page $s of $s of our fine '.LNG_Product_name);
因为所有的定义都有一
我想在PHP中使用共享内存,比如描述。但我想知道如何正确地选择$systemid。我必须对我的PHP代码中的数字(示例中的864, 897)进行“硬编码”,这样不同的进程才能进行交互。
但是,如何确保在其他地方不使用相同的id (其他应用程序,冲突)?如果我在运行时动态生成id,我就会遇到一个鸡/蛋问题(如何使用共享内存在PHP段之间共享id )。
好的,我可以在一个地方生成内存,将id写到一个文件中,并在其他地方读取它,也可以使用共享内存。但这是最好的办法吗?
代码示例:
<?php
$systemid = 864; // System ID for the shared memory
我试图通过从一些变量获取类名和方法名来动态实例化一个类并执行一个方法。
这是我使用的代码:
public function processAPI() {
// Require the PHP file that containes the class
require_once(Settings\Path\Absolute::$engine."/class".$this->endpoint.".php");
// $this->endpoint is a string containing the class name (t
我用以下代码将一个网站上传到一个实时服务器上。
class Model extends Database
{
public $errors = array();
public function __construct()
{
// code...
if(!property_exists($this, 'table'))
{
$this->table = strtolower($this::class) . "s";
}
我有一个用$variable ()定义的变量,我想把变量名称的一部分存储在一个常规的php中,然后通过动态设置名称来访问定义的变量。即:
define('xxx_yyy',123);
$a='xxz';
$b='_yyy';
//How to I echo out "123" now? (without using echo xxx_yyy);
//Something like these (don't work):
echo $a$b;
echo {$a$b};
我唯一能想到的就是:
$defined=get_de
我有以下被低估的常量错误:
test.php:
Notice: Use of undefined constant APP_ID - assumed 'APP_ID' in
/var/www/_calls/config.php on line 3
相关代码行:
test.php:
require_once('config.php');
config.php:
define(APP_ID, 'Your app name');
PHP Fatal error: Default value for parameters with a class type hint can only be NULL in /usr/share/php/PHPUnit/Framework/Test.php on line 66
PHP Stack trace:
PHP 1. {main}() /usr/bin/phpunit:0
PHP 2. PHPUnit_TextUI_Command::main() /usr/bin/phpunit:46
PHP 3. PHPUnit_TextUI_Command->run() /
假设我有两个php脚本script.php和inc.php。(<?php省略)
inc.php
$foo = 'a';
script.php
$foo = 'b'; // $foo is b
include 'inc.php'; // $foo is a
然后,在包含inc.php的那一刻,变量$foo被'a'覆盖。我想有文件,可以包括在没有副作用。
最实际的是一种局部范围:
inc.php (2)
// $foo is b
{
$foo = 'a'; // $foo is a
} // $foo i