php - PHP变量定义前的减号有什么作用?

标签 php

我在看一些 PHP 代码:

<?php

-$username = "admin";
-$password = "secret";
-$database = "mystore";

mysql_connect("localhost", $username, $password);
mysql_select_db($database);

变量名前的减号有什么作用?

如果我在 PHP 解释器中做同样的事情,它会产生有效的代码并且似乎没有区别:

$ php -a
Interactive shell

php > $a=1;echo $a;
1
php > -$a=2;echo $a;
2

我问过谷歌,但她帮不了我。

最佳答案

-$username = "admin"; 计算为 - ($username = "admin");

也就是说,前缀一元运算符 - 应用于表达式。

表达式仅包含一个赋值。

所以一个字符串被分配给一个变量,然后根据 php 语法,表达式返回相同的值,该值被隐式转换为数字并取反。然后结果被丢弃。

所以这里并没有什么特别的意思,是有人不小心放在那里的。

关于php - PHP变量定义前的减号有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29958125/

相关文章:

javascript - Laravel 5.3、Vue.js 2+ 无法使列表渲染 (v-for) 工作

PHP/MySQL 条件插入不插入

php - php资源是通过引用传递的吗?

php - 简单的 dom 解析器 double find() 不起作用?

php - 如何在 CakePHP 中创建自定义 MySQL 查询?

php - 将 php 查询放入数组中

javascript - Angular/PHP 中的 Cookie?

php - 从mysql编辑行

php - Eloquent:我的查询默认添加了信息?

php - 反转 PHP 中元素的显示顺序