我的问题非常基本.
我没有找到任何例子来满足我的需求,究竟serialize()和unserialize()在PHP是什么意思?他们只举一个例子 - 序列化一个数组并以一种原因不明的格式显示输出.通过他们的术语很难理解基本概念.
编辑:
<?php
$a= array( '1' => 'elem 1', '2'=> 'elem 2', '3'=>' elem 3');
print_r($a);
echo ("<br></br>");
$b=serialize($a);
print_r($b);
?>
Run Code Online (Sandbox Code Playgroud)
输出:
Array ( [1] => elem 1 [2] => elem 2 [3] => elem 3 )
a:3:{i:1;s:6:"elem 1";i:2;s:6:"elem 2";i:3;s:7:" elem 3";}
Run Code Online (Sandbox Code Playgroud)
我无法理解第二个输出.除此之外,任何人都可以举例说明我需要在使用之前序列化一个php数组吗?
对不起这个基本问题,但我没有在任何地方找到一个简单的答案.我想知道如何从我的mysql表中选择一个值.该表包括列'username'和'id'等('id'是自动递增,'username'是唯一的).给定用户名,我想设置一个会话变量username,该变量等于'id'列中与给定用户名对应的值.这是我已经尝试过的代码:
session_start();
$name = $_GET["username"];
$sql = "SELECT 'id' FROM Users WHERE username='$name'";
$result = mysql_query($sql);
$value = mysql_fetch_object($result);
$_SESSION['myid'] = $value;
Run Code Online (Sandbox Code Playgroud)
到目前为止,我得到"可捕获的致命错误:类stdClass的对象无法转换为字符串." 转换id为类型字符串不能解决问题.