$a = [1, 2, 3];
xdebug_debug_zval('a');
$b = $a;
xdebug_debug_zval('a');
unset($b);
xdebug_debug_zval('a');
Run Code Online (Sandbox Code Playgroud)
这将输出
a: (refcount=2, is_ref=0)=array (2 => (refcount=0, is_ref=0)=1, 1 =>(refcount=0, is_ref=0)=2)
a: (refcount=3, is_ref=0)=array (2 => (refcount=0, is_ref=0)=1, 1 => (refcount=0, is_ref=0)=2)
a: (refcount=2, is_ref=0)=array (2 => (refcount=0, is_ref=0)=1, 1 => (refcount=0, is_ref=0)=2)
Run Code Online (Sandbox Code Playgroud)
为什么在第一行refcount是2
我在php上运行了一个网页,其中包含几个表格,输入框和表格.设计很基本但是,我<br />需要时使用各种标签.有时我可能连续两三个,所以间距看起来更好.
当使用多个<br />标签时,有什么经验可以做吗?大多数人只是将它们附加在相同的代码行上,或者将每个<br />标记放在自己的行上吗?
我已经制作了一个facebook应用程序,当它从apps.facebook.com/myapp点完全打开到我的域的index.php并且可以在facebook应用程序窗口中看到,但是当我尝试将其重定向到我的注册页面时出现问题,它被重定向到我的域名,我希望在Facebook应用程序窗口中查看所有页面.尝试使用fb:redirect sdk函数,但网站表示他们将弃用这些代码.
<?php
if(preg_match('/apps.facebook.com/',$_SERVER[HTTP_REFERER])){
$app_id = '';
$api_key = '';
$app_secret = '';
$canvas_page = 'mydomain/index.php';
$auth_url = "http://www.facebook.com/dialog/oauth?client_id=".
$app_id."&redirect_uri=".urlencode($canvas_page)."&scope=email,user_birthday,user_interests,user_about_me";
$signed_request = $_REQUEST["signed_request"];
list($encoded_sig, $payload) = explode('.', $signed_request, 2);
$data = json_decode(base64_decode(strtr($payload,'-_', '+/')), true);
if (empty($data["user_id"])){
echo("<script> top.location.href='".$auth_url ."'</script>");
}else{
$canvas_page="mydomain/register.php";
echo ("<script> top.location.href='".$auth_url."'</script>");
}
}else{
echo "No facebook";
}
?>
Run Code Online (Sandbox Code Playgroud)
代码工作完美截至echo("<script> top.location.href='" .$auth_url ."'</script>")当$canvas_page在Facebook应用程序开发的形式一组; 但当$canvas_page更改为我的register.php页面时,会被重定向到其他页面.我哪里错了?
提前致谢
请原谅我,如果这是一个常见的事情,但我不确定我应该怎么做.
我想看看三个变量是否彼此相同
我以为我能做到这一点:
<?php
if ($one == $two == $three) {
echo "they all match.";
} else {
echo "one of these variables do not match.";
}
?>
Run Code Online (Sandbox Code Playgroud)
但我想这是不可能的.
有这个语法吗?或者我必须单独检查它们/用&&或|| ?
我知道单独检查它们会提供更多的准确性(并且可能是更好的做法)但是对于这种特殊情况,哪一个不匹配并不重要.
我正在努力使我的网站更加SEO友好我正在使用
RewriteEngine On
RewriteRule (.*)$ index.php?page=$1
Run Code Online (Sandbox Code Playgroud)
要打开site.co.uk/index.php?page=page_name成site.co.uk/page_name
我也想将它用于子页面.我试过这个:
RewriteEngine On
RewriteRule (.*)/(.*)$ index.php?page=$1&subpage=$2
Run Code Online (Sandbox Code Playgroud)
但它不起作用,它运行site.co.uk/page_name/sub_page但是当你去site.co.uk/page_name它时返回404未找到.
我希望它运行site.co.uk/page_name并返回page_name
要么
site.co.uk/page_name/sub_page 并返回 sub_page
等等
site.co.uk/page_name/sub_page/sub_page2/...
我不知道如何创建一个带有祝福的滚动框。
https://github.com/chjj/blessed
根据文档,它应该像这样:
"use strict";
const blessed = require('blessed');
const screen = blessed.screen({
smartCSR: true
});
let box = blessed.box({
top: 0,
left: 0,
width: '80%',
height: '80%',
style: {
bg: 'red'
},
alwaysScroll:true,
scrollable: true,
scrollbar: true
});
screen.append(box);
screen.render();
for (let i = 0; i < 200; i++) {
box.insertLine(0, 'texting ' + i);
box.screen.render();
}
Run Code Online (Sandbox Code Playgroud)
框窗口显示,它被填充,但没有滚动条。我想念什么?
所以,从http迁移到httpClient,我正在尝试使用HttpParams为我的get请求设置params ....
逻辑很简单
const params = new HttpParams();
if(expression) {
params.set('foo', 'bar');
}
this.http.get('url.json', {params: params});
Run Code Online (Sandbox Code Playgroud)
这样,参数不会通过!params.set('foo','bar'); 什么都不做..(无论满足条件;))
如果我这样做,但是:
const params = new HttpParams().set('foo', 'bar');
Run Code Online (Sandbox Code Playgroud)
foo已经设定好了!
我如何在我的案例中使用HttpParams(涉及一些评估)?
我正在使用 bitnami/symfony docker 项目(https://github.com/bitnami/bitnami-docker-symfony)
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d42e336d7454 bitnami/symfony:1-debian-10 "/app-entrypoint.sh …" 5 minutes ago Up 5 minutes 0.0.0.0:8000->8000/tcp simplistiapp_app_1
7f37c7c6fec8 bitnami/mariadb:10.3-debian-10 "/opt/bitnami/script…" 5 minutes ago Up 5 minutes 0.0.0.0:3306->3306/tcp simplistiapp_mariadb_1
Run Code Online (Sandbox Code Playgroud)
然后我尝试使用以下方法进行 SSH:
docker exec –it simplistiapp_app_1 /bin/bash
Run Code Online (Sandbox Code Playgroud)
收到此错误(昨天有效):
Error: No such container: –it
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?从我读过的文章来看,这应该有效 - 它昨天有效。
我有以下代码。如何使用调试器在 VS Code 中运行它。我安装并尝试了实时服务器,但可能做得不正确。
索引.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<button>Test</button>
<script src="index.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
索引.js
var button = document.querySelector('button');
var fn = () => console.log(this)
function fn() {
console.log(this);
}
button.addEventListener('click', fn)
Run Code Online (Sandbox Code Playgroud) 如果我们使用document.javascript,可以通过javascript获取cookie.
我想知道:通过javascript()获取会话($ _ SESSION ["session_var_name"])?????
下面是随机字符串生成的代码,它正在工作但是这里有一些问题,我现在无法弄清楚这里发生的是它总是返回长度为1的值,我期待一个长度为10的随机字符串.我也传递10长度.请指导我在这里做错了什么.
<?php
function random_string($length) {
$len = $length;
$base = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz123456789";
$max = strlen($base) - 1;
$activatecode = '';
mt_srand((double) microtime() * 1000000);
while (strlen($activatecode) < $len + 1) {
$activatecode.=$base{mt_rand(0, $max)};
return $activatecode;
}
}
?>
Run Code Online (Sandbox Code Playgroud) 我想编码PHP来隔开数字,例如:
$number = "55375911";
所以这个数字应该是2位数和6位数,它显示为:"55 3759 11".我怎么能编码呢?
谢谢你的帮忙.
我认为这是一些noob问题但是.说我的用户有平衡.我做
$stmt1 = $conn->prepare("SELECT `balance` FROM `us` WHERE login=?");
if($balance>20){
$sql = "UPDATE `us` SET `balance` = `balance`-20 WHERE login = :login";
}
Run Code Online (Sandbox Code Playgroud)
所以,如果我刚要求,这很好.但如果在同一时间2个用户要做2个请求余额将是-20.这对我不好.保存交易的任何样本,以避免双倍花费?