search
HomeBackend DevelopmentPHP Tutorialphp 数组转换json有有关问题 大家过来看看

php 数组转换json有问题 大家过来看看

如图:


为什么下面这句话没有输出任何东西?

echo json_encode($result);#输出结果

个人觉得可能是因为$data里面的数组元素为Client对象,在转为json的时候出问题了。但是我不知道是什么问题,怎么转换?或者有没有其他的转换方法?
class Result {<br />		var $state;<br />		var $data = array();<br />	}

完整代码:
$start = 0;
$end = 2;
$uid = 1;
$result = new Result();
$result_set = getClients($start, $end, $uid);
$data = array();
$count = 0;

while($row = mysql_fetch_array($result_set)) {
$client = new Client();
$client->cid = $row['id'];
$client->gender = $row['gender'];
$client->rank = $row['rank'];
$client->name = $row['name'];
$client->phoneNum = $row['phoneNum'];
$client->email = $row['email'];
$client->address = $row['address'];
$result->data[$count] = $client;

echo $result->data[$count]->cid." ";
echo $result->data[$count]->gender." ";
echo $result->data[$count]->rank." ";
echo $result->data[$count]->name." ";
echo $result->data[$count]->phoneNum." ";
echo $result->data[$count]->address."\n";

$count++;
}

if(count($data) > 0) {
$result->state = 0;
} else {
$result->state = 1;
}

echo json_encode($result);#输出结果

class Result {<br /> var $state;<br /> var $data = array();<br /> }

输出结果:
---------- debug php ----------<br /><br />Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in D:\WWW\wsd\trunk\src\server\api\db\init_db.php on line 10<br /><br />Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in D:\WWW\wsd\trunk\src\server\api\db\init_db.php on line 10<br />3  0  经理  张小莉  18825044888  广东省广州市天河区<br />4  0  主管  吴美凤  18576430777  广东省深圳市南山区蛇口南海大道1079号<br />PHP Deprecated:  mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in D:\WWW\wsd\trunk\src\server\api\db\init_db.php on line 10<br />PHP Deprecated:  mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in D:\WWW\wsd\trunk\src\server\api\db\init_db.php on line 10<br /><br />Output completed (0 sec consumed) - Normal Termination


应该有输出类似这种格式才对的:
{"state":1,<br />"data":[<br />           {"cid":3,<br />          "gender":0,<br />          "rank":"经理"<br />          "name":" 张小莉"<br />          "phoneNum":"18825044888  "<br />          "address":"广东省广州市天河区"},<br />          {"cid":4,<br />          "gender":0,<br />          "rank":"主管"<br />          "name":" 吴美凤"<br />          "phoneNum":"18576430777  "<br />          "address":" 广东省深圳市南山区蛇口南海大道1079号"}<br />          ]<br />}


请问这是什么问题呢?怎么解决?谢谢!





------解决思路----------------------
print_r($result);
能看到什么?
------解决思路----------------------
Object of class Result could not be converted to string 对象不能被转换为字符串
既如此,当然也不能 json 了
看看你的 Client 类定义
------解决思路----------------------
可能没有值吧

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
What data can be stored in a PHP session?What data can be stored in a PHP session?May 02, 2025 am 12:17 AM

PHPsessionscanstorestrings,numbers,arrays,andobjects.1.Strings:textdatalikeusernames.2.Numbers:integersorfloatsforcounters.3.Arrays:listslikeshoppingcarts.4.Objects:complexstructuresthatareserialized.

How do you start a PHP session?How do you start a PHP session?May 02, 2025 am 12:16 AM

TostartaPHPsession,usesession_start()atthescript'sbeginning.1)Placeitbeforeanyoutputtosetthesessioncookie.2)Usesessionsforuserdatalikeloginstatusorshoppingcarts.3)RegeneratesessionIDstopreventfixationattacks.4)Considerusingadatabaseforsessionstoragei

What is session regeneration, and how does it improve security?What is session regeneration, and how does it improve security?May 02, 2025 am 12:15 AM

Session regeneration refers to generating a new session ID and invalidating the old ID when the user performs sensitive operations in case of session fixed attacks. The implementation steps include: 1. Detect sensitive operations, 2. Generate new session ID, 3. Destroy old session ID, 4. Update user-side session information.

What are some performance considerations when using PHP sessions?What are some performance considerations when using PHP sessions?May 02, 2025 am 12:11 AM

PHP sessions have a significant impact on application performance. Optimization methods include: 1. Use a database to store session data to improve response speed; 2. Reduce the use of session data and only store necessary information; 3. Use a non-blocking session processor to improve concurrency capabilities; 4. Adjust the session expiration time to balance user experience and server burden; 5. Use persistent sessions to reduce the number of data read and write times.

How do PHP sessions differ from cookies?How do PHP sessions differ from cookies?May 02, 2025 am 12:03 AM

PHPsessionsareserver-side,whilecookiesareclient-side.1)Sessionsstoredataontheserver,aremoresecure,andhandlelargerdata.2)Cookiesstoredataontheclient,arelesssecure,andlimitedinsize.Usesessionsforsensitivedataandcookiesfornon-sensitive,client-sidedata.

How does PHP identify a user's session?How does PHP identify a user's session?May 01, 2025 am 12:23 AM

PHPidentifiesauser'ssessionusingsessioncookiesandsessionIDs.1)Whensession_start()iscalled,PHPgeneratesauniquesessionIDstoredinacookienamedPHPSESSIDontheuser'sbrowser.2)ThisIDallowsPHPtoretrievesessiondatafromtheserver.

What are some best practices for securing PHP sessions?What are some best practices for securing PHP sessions?May 01, 2025 am 12:22 AM

The security of PHP sessions can be achieved through the following measures: 1. Use session_regenerate_id() to regenerate the session ID when the user logs in or is an important operation. 2. Encrypt the transmission session ID through the HTTPS protocol. 3. Use session_save_path() to specify the secure directory to store session data and set permissions correctly.

Where are PHP session files stored by default?Where are PHP session files stored by default?May 01, 2025 am 12:15 AM

PHPsessionfilesarestoredinthedirectoryspecifiedbysession.save_path,typically/tmponUnix-likesystemsorC:\Windows\TemponWindows.Tocustomizethis:1)Usesession_save_path()tosetacustomdirectory,ensuringit'swritable;2)Verifythecustomdirectoryexistsandiswrita

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),