精华内容
下载资源
问答
  • php类中成员使用常量赋值错误
    2021-03-24 01:10:43

    一个类中:

    protected $config_file = DB_PATH . ‘db.conf’;

    就出现了错误,php5.4版本的:

    语法错误: unexpected ‘.’, expecting ‘,’ or ‘;’

    但在5.6版本上没有出现错误

    这个是PHP版本支持的问题。

    PHP 5.6及其以上版本是支持这样处理的。除了定义类的属性,在定义常量,设定函数或方法的默认参数等只接受静态值(

    static values

    )的地方,都支持静态表达式(

    static expressions

    ),字符串拼接(

    .

    )是其中一个所支持的操作。

    在之前的 PHP 版本中, 必须使用静态值来定义常量,声明属性以及指定函数参数默认值。 现在你可以使用包括数值、字符串字面量以及其他常量在内的数值表达式来 定义常量、声明属性以及设置函数参数默认值。

    见:http://cn2.php.net/manual/zh/…。

    另外,你的老大是错的,常量是在编译时(compile time)处理的,

    DB_PATH

    在框架启动的时候肯定已经申明,应该不会没有解析。

    语法错误啊,根据提示的行号看看,是不是;和,用成中文的了。

    问了老大已经明白了,在声明类的成员时,不能使用静态常量赋值,这个时候DB_PATH还没有解析,赋值应该放到构造方法中

    5.4太低了

    更多相关内容
  • php常量赋值

    2021-03-24 01:11:46
    123456789101112131415161718192021222324252627classmy{static$shengao="188";//my::$shengao="190";static$age="18";staticfunctionshengao(){echo"我的身高:".self::$shengao."";}staticfunctionage(){echo"我的...

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    class

    my{

    static

    $shengao

    =

    "188"

    ;

    //my::$shengao="190";

    static

    $age

    =

    "18"

    ;

    static

    function

    shengao(){

    echo

    "我的身高:"

    .self::

    $shengao

    .

    ""

    ;

    }

    static

    function

    age(){

    echo

    "我的年龄:"

    .self::

    $age

    .

    ""

    ;

    }

    static

    function

    zonghe(){

    echo

    "我的综合值:"

    .(self::

    $shengao

    /self::

    $age

    ).

    ""

    ;

    }

    }

    $num

    =199;

    my::

    $shengao

    =

    $num

    ;

    my::shengao();

    my::age();

    my::zonghe();

    输出结果:

    本文转自许琴 51CTO博客,原文链接:https://blog.51cto.com/xuqin/1569519,如需转载请自行联系原作者

    展开全文
  • PHP入坑之 赋值、变量和常量1年前阅读 1220评论 0喜欢 0###1、什么是赋值1、在PHP中,赋值主要有两种方式,分别为:`直接赋值` 和 `引用赋值`。2、直接赋值,就是在上述代码中已经出现过的场景,比如用 `=` 号,直接...

    PHP入坑之 赋值、变量和常量

    6cd5e4fd49658da7be73f2e8e3760c00.png

    1年前

    阅读 1220

    评论 0

    喜欢 0

    ###1、什么是赋值

    1、在PHP中,赋值主要有两种方式,分别为:`直接赋值` 和 `引用赋值`。

    2、直接赋值,就是在上述代码中已经出现过的场景,比如用 `=` 号,直接给一个变量赋予内容,给数组赋予键值等,都可以称为直接赋值。

    3、引用赋值,这是一个比较深入的赋值方式,在初学者中并不适合深入了解,所以开始的教程只做简单的介绍;引用赋值是依靠 `&` 符号,将两个变量间的内存捆绑在一起,只要其中一个变量的内容有所改变,那么另一个也会跟着同时改变。

    ```php

    # 直接赋值例子

    $test1 = 'hello world'; // 直接给变量赋值

    $test2 = $test1; // 通过变量1,直接给变量2赋值,但是之后再改变变量2的内容,变量1不会收影响

    $test3 = [

    1 => 'hello world', // 创建数组,并直接赋值

    ];

    $test4[1] = 'hello world'; // 通过键名,直接给该键赋值

    # 引用赋值例子

    $A = 'hello world';

    $B = &$A;

    $A = '师父最帅';

    echo $B; // 将会输出 师父最帅

    $B = 'hello world';

    echo $A; // 将会输出 hello world

    ```

    ### 2、变量和常量

    我们可以直接把变量、常量,都当做是生活做的一个杯子或盒子,它们是存储物体的容器,而在PHP中,我们一般称之为数据存储容器;

    #### A、变量

    变量的定义规则如下:

    ```

    1、变量以 $ 符号开头,其后是变量的名称

    2、变量名称必须以字母或下划线开头

    3、变量名称不能以数字开头

    4、变量名称只能包含字母数字字符和下划线(A-z、0-9 以及 _)

    5、变量名称对大小写敏感($A 与 $a 是两个不同的变量)

    ```

    注意:如果你不想使用该变量,并想释放其占用的内存,可以使用函数`unset()`

    #### B、常量

    常量类似变量,但是常量一旦被创建就无法重新修改其内容 或 删除。

    常量的创建需要依靠`define()`函数,该函数最多可传递3个参数:

    ```

    1、必传,常量的名称

    2、必传,常量的需要赋予的内容

    3、可选,规定常量名程是否对大小写不敏感。默认是 false。

    ```

    ```php

    # 创建一个对大小写敏感的常量

    define('Test1', 'hello world');

    echo Test1;

    # 创建一个对大小写不敏感的常量

    define('ABC', '老师最帅', true);

    echo abc;

    ```

    ####C、两者间的区别

    ```

    老师提醒:常量不同于变量的地方除了无法修改其内容外,还有2个地方:

    1、常量是全局性的,一旦创建之后,不管是在函数内,还是函数外均可以使用;而在函数外定义的变量,则不能在函数内部直接使用;

    2、常量的引用和创建都不需要带$符号,而变量则需要。

    ```

    #### D、不同的使用场景

    1、变量:常用于局部地方,例如函数体内外,经常会被修改的数据存储容器,同时变量有用完即销毁的概念存在。

    2、常量:常用于全局地方,例如程序的入口处,用于存储不允许被后续代码所修改的数据存储容器,常量是有着永久保存的概念。

    (常用于保存配置文件:数据库配置、程序环境配置等不变参数)

    © 著作权归作者所有

    展开全文
  • PHP 如何给常量赋值变量

    千次阅读 2017-03-14 14:11:48
    由于在类里的常量可以通过ClassName::constname这样的方式直接引用,所以很多人就喜欢在类里面定义常量值,那么怎么给常量赋值呢? 你可以先定义一个全局常量 define('GV', 'value'); 再给这个成员赋值 class A ...
    由于在类里的常量可以通过ClassName::constname这样的方式直接引用,所以很多人就喜欢在类里面定义常量值,那么怎么给常量值赋值呢?

    你可以先定义一个全局常量
    define('GV', 'value');

    再给这个成员赋值
    class A {
         const PV = GV;
    }

    但是不接受变量的赋值
    const PV = $another;
    是错误的  
    展开全文
  • 注意,需要说明的一点是自PHP4以来,引入了引用赋值的概念,其实和多数语言的引用类似,不过我觉得最类似的是C/C++.因为它也用到了"&"符号。例如:和其他语言一样,只能对有变量名的变量才可以引用。好了现在大家对...
  • PHP常量是定义后就不能修改和再次赋值。但是如果再次赋值会怎么样? <?php define('C', 12345); define('C', 123); ?> 这段代码会报个notice错误。带来的后果是:在你定义之前,其它人要
  • php常量和变量实例详解 【PHP在命令行下接收参数】 如果在命令行调试php,传入的参数通过$argv获取,注意其中包含了文件名这一个元素,数组中元素的个数通过$argc获取。 【可变变量】 指的是变量的名称可变,...
  • 常量三要素:* 1.1一旦创建,不可删除,不可修改;* 1.2不在头部添加'$'符* 1.3全局作用域,在函数中无须声明直接使用* 2.创建:* 2.1 函数: define('CONST_NAME',表达式);* 2.2 关键字: const contName = 静态标量,能用在...
  • 复制代码 代码如下:if (defined(‘CONST_NAME’)) { //do something } 变量检测则是使用isset,注意变量未声明或声明时赋值为NULL,isset均返回FALSE,如: 复制代码 代码如下: if (isset($var_...php /* 判断常量
  • PHP 对类的属性直接赋值
  • php常量与变量

    2021-04-23 06:00:51
    在一个变化过程中,始终不变的量,我们称它为常量,而变量则是变量是一段有名字的连续存储空间。...针对PHP常量入门学习,主要介绍PHP常量的定义和使用方式。一、PHP变量如何标识所谓标识符,其实也就是PH...
  • PHP——2(PHP变量作用域)PHP——3(PHP变量分离/引用(Variables Separation))为辅助阅读,可直接跳过Laruence关于引用赋值行为的描述和用debug_zval_dump刺探的结果有出入,下面我会指出Laruence的叙述有误的地方。...
  • 展开全部case-1:给类中的静态变量赋值62616964757a686964616fe59b9ee7ad9431333337623437:classPHPJungle{privatestatic$__instance=null;#类中的私有成员:静态变量publicfunction__construct(){}...
  • php 常量-魔术常量

    2021-04-23 06:07:36
    PHP中有七个魔术常量,他们的值其实是变化的,它们的值随着它们在代码中的位置改变而改变。所以称他们为魔术常量。例如 __LINE__ 的值就依赖于它在脚本中所处的行来决定。这些特殊的常量不区分大小写。在手册中这几...
  • php中const定义常量

    2021-03-24 12:24:15
    const 常量1.在定义时必须被初始值,2.前面不加任何修饰符3.变量名字母一般都大写4.常量可以被子类继承5.一个常量是属于一个类的,而不是某个对象的作用:当某些值是固定不变的,就用const1.const 定义的常量和...
  • 1.自定义常量* 必须用函数define()定义* 定义完后其值不能再改变了* 使用时直接用常量名,不能像变量一样在前面加$s例如:define("PI",3.14);定义一个常量$area = PI*R*...2 系统常量:FILE :php程序文件名LINE :PHP...
  • php 魔术函数 1。__construct() 实例化对象时被调用, 当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用。...若属性存在,则直接赋值; 若不存在,则会调用__set函数。 6
  • 本篇文章主要介绍php常量,常量的语法分析,感兴趣的朋友参考下,希望对大家有所帮助。一、常量常量是一个简单值的标识符(名字)。如同其名称所暗示的,在脚本执行期间该值不能改变(除了所谓的魔术常量,它们其实不是...
  • php中输出常量

    2021-04-21 09:11:05
    PHP手册 – 变量和常量变量php中变量的定义,就是就在某一个单词前面加上“”。这是php的特色,∗∗我想到的一个好处就是和...赋值方式也能体现php作为弱类型...文章文艺小青年2017-03-30936浏览量PHP 魔术变量PHP魔...
  • PHP常量类型

    2021-04-05 08:04:11
    常量是简单值的名称或标识符。在执行脚本期间,常量值不能更改。默认情况下,常量区分大小写。按照惯例,常量标识符总是大写。常数名称以字母或下划线开头,后面跟着任意数量的字母,数字或下划线。如果你已经定义了...
  • PHP 常量与变量【常量】可以用 define() 函数来定义常量,在 PHP 5.3.0 以后,可以使用 const 关键字在类定义之外定义常量。一个常量一旦被定义,就不能再改变或者取消定义。常量只能包含标量数据(boolean,integer...
  • 赋值分为: 传值赋值:把自己值给另一个变量 $a=$b ,两个变量互不牵扯 变量默认是传值赋值 引用赋值: $p1=&p2,两个变量用同一个指针, Person $p1=new Person(); Person $p2=new Person(); 对象赋值默认是引用...
  • 有关变量的传地址赋值 PHP 3 中,变量总是传值赋值PHP 4 提供了另外一种方式给变量赋值:传地址赋值。使用传地址赋值,即简单地追加一个(&)符号到将要赋值的变量前(源变量)。这意味着新的变量简单的引用了...
  • PHP 常量与变量

    2021-03-23 17:23:26
    写在前面常量用于存储不经常改变的数据信息的量,常量的值被定义后,在程序整个执行期间,这个值都有效,并且不可再次赋值。变量用于存数数据临时数据信息,是编写程序中尤为重要的一部分,在定义变量的时候,通常要...
  • PHP常量的使用

    2021-04-23 12:48:20
    PHP5中const定义的常量与定义变量的方法不同,不需要加 $ 修饰符。 const PI = 3.14; 这样就可以。而使用const 定义的常量名称一般都大写,这是一个约定,在任何语言中都是这样。如果定义的常量由多个单词组成,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 21,518
精华内容 8,607
关键字:

php常量赋值