PHP로 클라우드 프린팅을 구현하는 방법은 무엇입니까? 이 기사에서는 주로 PHP 클라우드 인쇄 클래스를 소개하고 PHP의 수집, 대기열 정렬, 데이터 인쇄 및 기타 기능을 분석하여 완전한 예의 형태로 네트워크 인쇄 데이터를 실현합니다. 이는 특정 참조 값이 있으며 필요한 친구가 참조할 수 있습니다. 그것. 그것이 모두에게 도움이 되기를 바랍니다.
자세한 내용은 다음과 같습니다.
프로젝트를 진행하려면 인쇄 기능이 있는 수백 대의 컴퓨터가 필요합니다. 원래는 네트워크 프린터를 사용하고 싶었지만 나중에 네트워크 프린터가 없다는 것을 알고 직접 인쇄 클래스를 작성했습니다.
클래스 구현 아이디어는 먼저 인쇄할 모든 데이터를 수집한 다음 js를 사용하여 창 인쇄 기능을 호출하는 것입니다. 현재 IE에서 사용됩니다.
클래스는 인쇄 대기열 기능을 제공합니다. (PS, 직설적으로 말하면 데이터를 하나씩 읽는다는 의미입니다.)
class Wprint{ //收集打印代码 private $data = array(); //处理打印代码 private $handle; public function __construct() { header("Content-type:text/html;charsetutf-8"); $this->link(); //链接数据库 $this->collect($_POST["username"],$_POST["content"],$_POST["ip"]); $this->handle(); } //链接数据库 private function link() { $link = mysql_connect('localhost', 'root', '123456'); mysql_select_db('shen', $link); mysql_query('SET NAMES utf8'); } //收集打印代码 private function collect($username,$content,$ip) { $code["username"] = $username; $code["content"] = $this->check($content); $code["ip"] = $ip; $code["state"] = 0; $code["priority"] = 0; array_push($this->data,$code);//数据节点入栈 } //处理打印代码入库 private function handle() { foreach($this->data as $value) { $sql = "insert into print(username,content,ip,state,priority) values('{$value["username"]}','{$value["content"]}', '{$value["ip"]}','{$value["state"]}','{$value["priority"]}')"; $query = mysql_query($sql); if($query) { $id = mysql_insert_id(); //获取最近insert操作得到的ID echo "数据收集成功,正在排队打印,排队ID为".$id; $this->num($id); } else { echo "数据收集失败,请3秒后再一次提交"; } } } //检查传人数据是否为空 private function check($string) { if(strlen($string) == 0 || $string == " ") { echo "数据收集失败,打印内容为空"; exit; }else { return $string; } } //获取打印排队人数 private function num($id) { $sql = "select id from print where state=0 and id<".$id." order by id asc"; $query = mysql_query($sql); $num = mysql_num_rows($query); echo ",您前面还有".$num."个人在排队"; } //打印数据 public function Yprint() { $sql = "select id,content from print where state=0 order by id asc limit 1"; $query = mysql_query($sql); $row = mysql_fetch_array($query); if(!empty($row["content"])) { echo "<script tyle=\"text/javascript\"> window.print(); </script>"; $id = $row["id"]; $sql = "update print set state=1 where id=".$id; mysql_query($sql); echo "打印处理完成"; }else { echo $row["content"]; } } }
아이디어는 매우 간단합니다. 데이터를 수집하고 하나씩 처리하는 것입니다. 이는 네트워크 인쇄 문제를 해결할 뿐만 아니라 네트워크 인쇄 프로세스에서 대기하는 문제도 방지합니다.
관련 권장사항:
javaScript 프린터에 연결, 영수증 인쇄 예시 공유
php 대기열 메시지 대기열 thinkphp 대기열 PHP 대기열 처리 높은 병합
PHP는 어떻게 사용자 클라이언트를 얻나요? ? 실제 IP
위 내용은 PHP로 클라우드 인쇄를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!