货币问答:php数据处理

潘杰鑫

PHP处理数据库

请检查一下$WB对应的表是否已经定义?提示的是(indexx附近有语法错误。是你的SQL语句有问题,建议将执行的SQL单独赋值。$sql="insert into $WB (indexx,id,mid,uid,parent,t,reposts_count,attitudes_count,comments_count,text,original_text,user_created_at,followers_count,bi_followers_count,favourites_count,statuses_count,friends_count,username,screen_name,user_description,gender,province,city,verified,verified_reason,verified_type,user_location,user_avatar,user_geo_enabled,picture,geo) values $data_values");";echo $sql."<br/>";//测试输出,然后检查该SQL语句的语法是否正确。$query=mysqli_query($sql);

您好,按照您的方法试了试,输出这样:insert into (indexx,id,mid,uid,parent,t,reposts_count,attitudes_count,comments_count,text,original_te..好像没有打印出$WB的字符串,但是我直接打印$WB的时候是有值的,这要怎么解决呢

推荐
不推荐
展开
收起
金碧神锋

在PHP中怎么解决大量数据处理的问题

mysql_query函数查询的方式是查e69da5e6ba903231313335323631343130323136353331333361326330询出全部结果后缓存到内存中,这样就会出现超内存的现象,使用另外一个函数mysql_unbuffered_query可以解决这个问题,mysql_unbuffered_query不会缓存结果集,而是查询出来数据后立马对结果集进行操作,也就是便查询边返回,这样就不会出现超出内存的现象,但是使用mysql_unbuffered_query的是时候不能使用 mysql_num_rows() 和 mysql_data_seek()。并且向 MySQL 发送一条新的 SQL 查询之前,必须提取掉所有未缓存的 SQL 查询所产生的结果行。例如:使用缓存结果集的代码:function selecttest() { try { $pdo = new PDO("mysql:host=localhost;dbname=test", 'root', '123456');// 不使用缓存结果集方式// $pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false); $sth = $pdo->prepare('select * from test'); $sth->execute(); echo '最初占用内存大小:' . memory_get_usage() . "\n"; $i = 0; while ($result = $sth->fetch(PDO::FETCH_ASSOC)) { $i += 1; if ($i > 10) { break; } sleep(1); print_r($result); echo '占用内存大小:' . memory_get_usage() . "\n"; } } catch (Exception $e) { echo $e->getMessage(); } }执行时将会报超出内存的错误:Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 204800000 bytes) in E:\ProgramDevelopment\RuntimeEnvironment\xampp\htdocs\test\test.php on line 56Call Stack: 0.0005 135392 1. {main}() E:\ProgramDevelopment\RuntimeEnvironment\xampp\htdocs\test\test.php:0 0.0005 135568 2. test->selecttest() E:\ProgramDevelopment\RuntimeEnvironment\xampp\htdocs\test\test.php:85 0.0050 142528 3. PDOStatement->execute() E:\ProgramDevelopment\RuntimeEnvironment\xampp\htdocs\test\test.php:56将上面代码中的$pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);一行的注释去掉后将不在缓存结果集,这时运行该函数的结果如下:最初占用内存大小:144808Array( [id] => 1 [a] => v [b] => w [c] => i)占用内存大小:145544Array( [id] => 2 [a] => b [b] => l [c] => q)占用内存大小:145544Array( [id] => 3 [a] => m [b] => p [c] => h)占用内存大小:145536Array( [id] => 4 [a] => j [b] => i [c] => b)占用内存大小:145536可以看到,这时返回一条数据内存占用非常的小,也就700多字节,这样就不会出现超出内存的错误了。

推荐
不推荐
展开
收起
万里辉

PHP可以处理数据库操作的异常处理么?? - PHP进阶讨论

PHP里面的数据库扩展会提供有相应的函数捕获错误,比如mysql有mysql_errno,mysql_error用来取得数据库的错误信息,PostgreSQL 就有pg_last_error函数,可以查查PHP手册

推荐
不推荐
展开
收起
吴押狱

怎么处理php加密的数据

php将密码存入数据库,可以分内常见的4种方式:1、直接md5加密存到到数据库2、md5两次存到数据库3、对需要加密的字符串和一个常量 进行混淆加密4、生成一个随机的变量存到数据库中,然后对需要加密的字符串和这个随机变量加密123456789101112<?php$str="admin"; //需要加密的字符串$str2="php"; //增加一个常量混淆 $pass1=md5($str);$pass2=md5(md5($str));$pass3=md5($str.$str2);echo $pass1."".$pass2."".$pass3;?>输出: 第四种 1234$str="admin"; //需要加密的字符串$encrypt=$row['encrypt']; // 生成的 随机加密字符串 存到数据库中$pass4=md5($str.$encrypt);// 8db2ec7e9636f124e56f7eb4d7b7cc7e

推荐
不推荐
展开
收起
蜀山掌门

php处理字节流

字节流是由字节组成的, 字节流是最基本的,所有的InputStrem和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的 字符流和字节流都是什么 流就是stream. 一个连续的字节队列。 流是程序输入或输出的一个连续的字节序列,设备(例如鼠标,键盘,磁盘,屏幕和打印机)的输入和输出都是用流来处理的。在C语言中,所有的流均以文件的形式出现---不一定是物理磁盘文件,还可以是对应与某个输入/输出源的逻辑文件 流(streams)在I/O系统中是一种I/O机制和功能,或者称为streams子系统。它本身并不是一个物理设备的概念。 引入流的目的: 传统的字符设备驱动程序框架有许多缺点,这表现在: 。内核与字符设备驱动程序间接口的抽象层次太高 。内核没有为字符设备提供可靠的缓冲区分配和管理功能 。许多系统对字符设备的界面是把数据看成是FIFO(先进先出)的字节流,因此没有识别消息边界,区分普通设备和控制信息,以及判定不同消息优先级的能力,也没有字节流流量控制 。在网络数据传输设备中这些问题更突出。网络中数据传输是基于消息或数据分组的。 流的概念: 用通讯中的术语来说,流是全双工的处理过程,它是内核中驱动程序和用户进程之间的数据传输通道。 从流的构造上来说,它由一个流头,一个流驱动程序尾,以及其间的零个或若干个可选模块构成 。流头是一个用户级接口,它允许用户应用程序通过系统调用接口来访问流。驱动程序尾与底层设备通信。在流的中间的模块是处理数据的。字节流与字符流主要的区别是他们的的处理对象字节流是由字节组成的,字符流是由字符组成的. Java里字符由两个字节组成.字节流是最基本的,所有的InputStrem和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的但实际中很多的数据是文本,又提出了字符流的概念,它是按虚拟机的encode来处理,也就是要进行字符集的转化。在从字节流转化为字符流时,实际上就是byte[]转化为String时,public String(byte bytes[], String charsetName)有一个关键的参数字符集编码,通常我们都省略了,那系统就用操作系统默认的lang流式传输主要指将整个音频和视频及三维媒体等多媒体文件经过特定的压缩方式解析成一个个压缩包,由视频服务器向用户计算机顺序或实时传送。在采用流式传输方式的系统中,用户不必像采用下载方式那样等到整个文件全部下载完毕,而是只需经过几秒或几十秒的启动延时即可在用户的计算机上利用解压设备对压缩的A/V、3D等多媒体文件解压后进行播放和观看。此时多媒体文件的剩余部分将在后台的服务器内继续下载。本回答被提问者采纳

推荐
不推荐
展开
收起
有营煮妇

如何在 PHP 中处理 Protocol Buffers 数据

第一步,安装Google的protoc编译器,这个工具可以把proto文件中定义的Message转换为各种编程语言中的类。下载release版本直接编译安装。第二步,安装protoc的PHP plugin,需要使用composer安装,这个插件可以将proto文件转换到PHP文件,在PHP应用中引用后,可以将二进制格式的Protocol Buffers数据转换为PHP的对象。第三步,安装php-protocolbuffers,这是一个PHP扩展,在第二步中已经完成了proto文件到PHP文件的转换,但是对PHP对象的各种操作还需要这个扩展中的API方法。第四步,借助上面提到的扩展的各种API方法,可以简单地get出自己需要的字段完成后续工作require "....../kingso.proto.php"$ks_result = KSResult::parseFromString($kingso_res);$ks_result->get('xxx_name');

推荐
不推荐
展开
收起
乾天灵火

很简单的PHP作业, 大概任务是:建立PHP网页,读取表格(已给出)的数据,然后处理数据输出结果

execl表格? 用phpexecl插件读取,插件使用方法自行搜索。如果是数据库表格,用pdodb或mysqli连接数据库,查询指定行数据,php foreach遍历出来即可

不是,是个HTML文件..
php操作html文件,有个插件 phpQuery ,可以让php类似jquery的操作方法取出html的元素,然后同样foreach遍历phpquery获取后的对象,输出到页面,如果不会jquery,也可以正则匹配html或Xpath匹配。读取html文件 可以用这个方法 file_get_contetns(可以是网址也可以是本地的html文件)

推荐
不推荐
展开
收起
天辛飞剑

PHP中foreach处理列表数据哪一种更好

肯定不查数据库效率更高。循环里面数据库查询,一般都是会被列为优化的对象,所以尽量不要在循环里面查询数据库

推荐
不推荐
展开
收起
张让

php如何高效的处理500M以上的数据

mysql_query函数查询的方式是查询出全部结果后缓存到内存中,这样就会出现超内存的现象,使用另外一个函数mysql_unbuffered_query可以解决这个问题,mysql_unbuffered_query不会缓存结果集,而是查询出来数据后立马对结果集进行操作,也就是便查询边返回,这样就不会出现超出内存的现象,但是使用mysql_unbuffered_query的是时候不能使用 mysql_num_rows() 和 mysql_data_seek()。并且向 MySQL 发送一条新的 SQL 查询之前,必须提取掉所有未缓存的 SQL 查询所产生的结果行。

推荐
不推荐
展开
收起
查看更多答案
收起