相关疑难解决方法(0)

Reference — What does this symbol mean in PHP?

What is this?

This is a collection of questions that come up every now and then about syntax in PHP. This is also a Community Wiki, so everyone is invited to participate in maintaining this list.

Why is this?

It used to be hard to find questions about operators and other syntax tokens.¹
The main idea is to have links to existing questions on Stack Overflow, so it's easier for us to reference them, not to copy over content from …

php arguments symbols operators

4314
推荐指数
21
解决办法
63万
查看次数

什么是Java?:操作符调用,它做了什么?

我已经使用Java几年了,但直到最近我还没有碰到这个结构:

int count = isHere ? getHereCount(index) : getAwayCount(index);
Run Code Online (Sandbox Code Playgroud)

这可能是一个非常简单的问题,但有人可以解释一下吗?我该怎么看?我很确定我知道它是如何工作的.

  • 如果isHere是真的,getHereCount()被称为,
  • 如果isHere是假getAwayCount()则调用.

正确?这个结构叫做什么?

java syntax ternary-operator conditional-operator

148
推荐指数
6
解决办法
18万
查看次数

在PHP中显示带序数后缀的数字

我想显示如下数字

  • 1作为第1,
  • 2作为第2,
  • ...
  • 150为150.

How should I find the correct ordinal suffix (st, nd, rd or th) for each number in my code?

php numbers

139
推荐指数
7
解决办法
6万
查看次数

什么是?:在PHP 5.3中?

可能重复: 什么是PHP运算符"?"和":"被调用,它们做了什么?

来自http://twitto.org/

<?PHP
    require __DIR__.'/c.php';
    if (!is_callable($c = @$_GET['c'] ?: function() { echo 'Woah!'; }))
        throw new Exception('Error');
    $c();
?>
Run Code Online (Sandbox Code Playgroud)

Twitto使用从PHP 5.3开始提供的几个新功能:

  1. DIR不变
  2. 运营商
  3. 匿名功能

  1. 在PHP 5.3 中,数字2对?:做什么?

  2. 另外,匿名函数是什么意思?那不是已经存在了一段时间的东西吗?

php ternary-operator language-construct conditional-operator php-5.3

83
推荐指数
3
解决办法
4万
查看次数

为什么从PHP 5.4开始永久启用"echo"短标签?

甚至用于告诉我们PHP"短标签"(<? /*...*/ ?>)的官方文档都是"糟糕的".然而,由于PHP 5.4,该echo品种<?= /*...*/ ?>被永久不管启用short_open_tag设置.

改变了什么?

即使之前因为short_open_tag在共享托管平台上是否启用了不可预测的特性而不鼓励他们,当然这个论点不会因为某些子主机将运行PHP 5.4而消失?

可以说,对语言的这种改变本身并不意味着我们应该避免使用"短标签"的建议的变化,但如果他们遇到了麻烦,那么看起来PHP开发人员似乎不再"讨厌"他们许多.对?

我现在可以得出的唯一合乎逻辑的结论是,在PHP 5.4中引入这一变化必须有一些客观的理由.

它是什么?

php coding-style php-shorttags

36
推荐指数
2
解决办法
2万
查看次数

isset PHP isset($ _ GET ['something'])?$ _GET ['something']:''

我希望扩展我的PHP知识,我遇到了一些我不确定它是什么或如何搜索它的东西.我正在看php.net的isset代码,我明白了isset($_GET['something']) ? $_GET['something'] : ''

我理解正常的isset操作,比如if(isset($_GET['something']){ If something is exists, then it is set and we will do something }但是我不明白?,重复再次获取,或者是''.有人可以帮我解决这个问题,或者至少指出我正确的方向吗?

php isset

31
推荐指数
3
解决办法
17万
查看次数

什么 ......:......呢?

$items = (isset($_POST['items'])) ? $_POST['items'] : array();
Run Code Online (Sandbox Code Playgroud)

我不明白这段代码的最后一段" ? $_POST['items'] : array();"

这些代码组合到底做了什么?

我使用它从html文本框中获取一堆值并将其存储到会话数组中.但问题是,如果我尝试在文本框中重新提交数据,新的数组会话将完全覆盖旧的会话数组空白和所有空格.

我只想覆盖已经有值的数组中的位置.如果用户决定只填写几个文本框,我不希望先前的会话数组数据被空格(来自空白文本框)覆盖.

我认为上面的代码是问题所在,但我不确定它是如何工作的.请赐教.

php syntax ternary-operator

18
推荐指数
2
解决办法
2万
查看次数

你能从Javascript发出HTTP PATCH请求吗?

我正在使用一个API,要求我作为URI的一部分发出HTTP PATCH请求,这可以通过Javascript来做,我的研究显示我只能执行POST,GET,DELETE和PUT.是否允许PATCH?

谢谢,

javascript http

12
推荐指数
1
解决办法
1万
查看次数

条件运算符只有true语句

我想将变量设置为值,但仅在条件为真时才设置.
而不是做以下事情:

if($myarray["foo"]==$bar){  
    $variablename=$myarray["foo"];  
}  
Run Code Online (Sandbox Code Playgroud)

如果变量名很长,或者它可能涉及数组,这可能会很长,当我想要做的很简单时 - 如果条件为真则设置一个值.

我想使用条件运算符,如下所示:

$variablename=($myarray["foo"]=="bar")? $myarray["foo"]......
Run Code Online (Sandbox Code Playgroud)

但这失败了,因为如果语句为false,我根本不想设置变量.

基本上,我要做的是让第一个例子更短.也许条件运算符不是这样的...

有没有人有什么建议?

php conditional conditional-operator

5
推荐指数
3
解决办法
5347
查看次数

PHP中'?','()'和':'符号的含义是什么?

我终于想起了要问的问题.我从来没有真正得到过什么:和?当像这样定义一个变量时:

$ip = ($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR'];
Run Code Online (Sandbox Code Playgroud)

你可以看到有吗?和:和()

谁能给我一个关于它们的原因和方式的简要细节?

php variables definition

4
推荐指数
1
解决办法
935
查看次数