PHP print和echo?有什么区别?
Stack Overflow有很多关于PHP print和echo关键字使用的问题.
这篇文章的目的是提供 关于PHP 和关键字的规范参考问题和答案print,echo并比较它们的差异和用例.
可能的重复:
PHP中的echo和print有何不同?
PHP中的'print'和'echo'有什么区别吗?
PHP中的echo,print,print_r有什么区别?
有几种方法可以在PHP中打印输出; 包括但不仅限于:
echo 'Hello';
echo ('Hello');
print 'Hello';
print ('Hello');
Run Code Online (Sandbox Code Playgroud)
这四个之间有什么不同吗?另外,括号是否有任何区别?
如果我print在这段代码中使用:
<?php
for($i = 1; $i <= 3; print $i . "\n") {
$i++;
}
?>
Run Code Online (Sandbox Code Playgroud)
我认为这是输出:
2
3
4
但是当我使用echo代码时不起作用:
<?php
for($i = 1; $i <= 3; echo $i . "\n") {
$i++;
}
?>
Run Code Online (Sandbox Code Playgroud)
我看到这个错误:
PHP解析错误:第3行的/media/datos/xampp/htdocs/temp/1.php中的语法错误,意外的'echo'(T_ECHO),期待')'
我的问题是:
print在for循环中使用第三个表达式,但在使用时不能使用echo,为什么它们的行为彼此不同?参考文献:
我试图创建一个包含1to 之间所有奇数的数组20,000.我使用var_dump()末尾显示数组值而不使用循环.
由于某种原因,它将无法解决.
到目前为止这是我的代码:
$array_variable = array();
for($i=1; $i<=20000; $i++){
if($i%2 == 1){ // if the remainder after division `$i` by 2 is one{
print_r($array_variable[$i]); // if odd, echo it out and then echo newline for better readability;
}
}
var_dump($array_variable);
Run Code Online (Sandbox Code Playgroud) 我正试图从我的ajax调用中获取一个变量:
$.ajax({
type: "POST",
url: "insert",
data: { title:title, start:dstart, end:dend },
contentType: "application/json",
dataType : 'json',
success : function(data) {
data = JSON.parse(data);
console.log('data = '); // is showing the data with double quotes
console.log(data);
}
});
Run Code Online (Sandbox Code Playgroud)
还有我的PHP:
$id = $calendar->getId();
$json = array ( 'id' => $id );
var_dump(json_encode($json));
json_encode($json);
Run Code Online (Sandbox Code Playgroud)
和我一起,var_dump我可以看到我json_encore,例如:
string '{"id":156}' (length=10)
Run Code Online (Sandbox Code Playgroud)
但在我的ajax()成功中,console.log()不要在我的控制台中显示任何内容.
我在哪里可以看到我success: function(data)是否空?我会在我的ajax成功中抓住id.
更新:问题已修复.事实上我正在使用symfony,我没有在我的动作插入中看到我的PHP,symfony(indexSuccess.php)调用的页面不是空的,这就是为什么它根本不工作.)