php+xdebug+dbgp远程调试(多人)

创建DBGP服务配置如果已经有人配置好,其他人如果也想要调试的话,只需按照这里的2和3配置。调试到下载页面,下载python版本的dbgp到服务器上。解压后执行pydbgpproxy。如果提示找不到dbgp模块,则编辑该文件。在96行左右有这么一块代码:candidate_paths=[dirname(this_dir),#Komodosourcetreelayoutjoin(dirname(this_dir),pythonlib),]把join(dirname(this_dir),pythonlib)改为join(this_dir,pythonlib)再执行。如果执行成功,会有类似于以下的输出:[root@localhostdbgp]#./pydbgpproxy-i0.0.0.0:9001-d9000INFO:dbgp.proxy:startingproxylisteners.appid:11203INFO:dbgp.proxy:dbgplisteneron127.0.0.1:9000INFO:dbgp.proxy:IDElisteneron0.0.0.0:9001服务器上编辑php...

手把手教你ARC——iOS/Mac开发ARC入门和使用

RevolutionofObjective-c本文部分实例取自iOS5Toturail一书中关于ARC的教程和公开内容,仅用于技术交流和讨论。请不要将本文的部分或全部内容用于商用,谢谢合作。欢迎转载本文,但是转载请注明本文出处:http://www.onevcat.com/2012/06/arc-hand-by-hand/本文适合人群:对iOS开发有一定基础,熟悉iOS开发中内存管理的ReferenceCounting机制,对ARC机制有听闻很向往但是一直由于种种原因没有使用的童鞋。本文将从ARC机理入手对这个解放广大iOS开发者的伟大机制进行一个剖析,并逐步引导你开始使用ARC。一旦习惯ARC,你一定会被它的简洁高效所征服。虽然距离WWDC2011和iOS5已经快一年时间,但是很多开发者并没有利用新方法来提高自己的水平,这点在ARC的使用上非常明显(特别是国内,基本很少见到同行转向ARC)。我曾经询问过一些同行为什么不转向使用ARC,很多人的回答是担心内存管理不受自己控制..其实我个人认为这是对于ARC机制了解不足从而不自信,所导致的对新事物的恐惧。而作为最需要“追赶时髦...

golang开发游戏的多吗

1、Golang游戏开发是一个非常开放的领域,它可以使用Go语言来开发游戏,让开发者利用Go语言的优势快速开发游戏。Go语言拥有简单、可拓展、高效的特点,可以有效地满足游戏开发需求。2、Go是谷歌的编程语言,而不是社区的。在这位博主看来,虽然Go语言拥有一个贡献者社区,但是它并不是社区的项目,只是谷歌的一个项目。所以只要是谷歌反对的东西,没有人可以把这个东西加到Go语言中。3、针对网游的这些特点,golang的语言特性十分适合开发游戏服务器端。首先,go语言提供goroutine机制作为原生的并发机制。每个goroutine所需的内存很少,实际应用中可以启动大量的goroutine对并发连接进行响应。4、然后,针对游戏服务器这种高实时性的运行环境,GC所造成的跳帧问题确实比较麻烦,前面的大神@达达有比较详细的论述和缓解方案,就不累述了。随着golang的持续开发,相信应该会有非常大的改进。5、Go是一个新的并没有多少用户的语言,但是Obective-C同样。...
开发笔记 开发笔记·2023-04-30

thinkphp实现sql like模糊查询实例

目前使用thinkphp框架进行项目开发的人越来越多了,由于其封装性较好,导致了很多纯PHP开发的部分不易上手,本文实例即以like模糊查询为例对此加以说明。这里主要通过举例来说明用法:ThinkPHP可以支持直接使用字符串作为查询条件,但是大多数情况推荐使用索引数组或者对象来作为查询条件,因为会更加安全。一、使用字符串作为查询条件这是最传统的方式,但是安全性不高,例如:代码如下:1$User =M("User"); //实例化User对象2 $User->where('type=1ANDstatus=1')->select();最后生成的SQL语句是代码如下:1SELECT * FROM think_user WHERE type=1 AND status=1如果进行多字段查询,那么字段之间的默认逻辑关系是逻辑与AND,但是用下面的规则可以更改默认的逻辑判断,通过使用_logic定义查询逻辑:代码如下:1$User =M(&qu...

php+redis实现超时取消订单功能

业务场景:秒杀案例秒杀业务逻辑:多个用户同时抢单,通过mysql行锁抢到的用户进入待支付页面(倒计时)。当用户没有支付订单超时时则取消该订单并归还库存。应用thinkphp+redis+workerman(可以自定义命令常驻)1、thinkphp安装workerman。这里就过了,thinkphp手册去找。2、安装好redis及扩展。用宝塔的直接搞就完了,过。3、生产者:用户创建订单向redis插入一条订单数据。$redis=newRedis();$redis->connect('127.0.0.1',6379);//$redis->auth('密码');//redis有密码就加/***seckill_time为列队名称*time()+$seckill['pay_time']为到期时间戳*$newSeckillOrder->id为订单id,可以json字符串存储*/$redis->zAdd('seckill_time',time()+$seckill['pay_time'],$newSeckillOrder->id);4、消费者:这里我们需要一个常驻内存一...

Java 开发环境配置

下载JDK首先我们需要下载java开发工具包JDK,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html,点击如下下载按钮:在下载页面中你需要选择接受许可,并根据自己的系统选择对应的版本,本文以Window64位系统为例:下载后JDK的安装根据提示进行,还有安装JDK的时候也会安装JRE,一并安装就可以了。安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为 C:ProgramFiles(x86)Javajdk1.8.0_91。配置环境变量1.安装完成后,右击"我的电脑",点击"属性",选择"高级系统设置";2.选择"高级"选项卡,点击"环境变量";然后就会出现如下图所示的画面:在"系统变量"中设置3项属性,JAVA_HOME、PATH、CLASSPATH(大小写无所谓),若已存在则点击"编辑",不存在则点击"新建&quo...
开发笔记 开发笔记·2023-04-19

C# 中如何开发插件

原理写接口、写类、生成DLL、动态加载DLL。加载示例private void LoadMonitoringFactories(){IMonitoringFactories = new List<IMonitoringFactory>();string pluginsPath = AppDomain.CurrentDomain.BaseDirectory + "\plugins";if (!Directory.Exists(pluginsPath)){return;}string[] files = Directory.GetFiles(pluginsPath, "*.dll"); // pluginsPath 必须存在,否则 Directory.GetFiles 报错。foreach (string file&nbs...
代码星球 代码星球·2023-04-16

统计软件开发中的四舍五入大问题-C# Round 与 ToString 不同

统计软件开发中的四舍五入大问题-哪种四舍五入?统计软件开发中的四舍五入大问题-平均与四舍五入顺序统计软件开发中的四舍五入大问题-横向合计和纵向合计统计软件开发中的四舍五入大问题-分批付款统计软件开发中的四舍五入大问题-加分还是扣分?统计软件开发中的四舍五入大问题-JavaScript不精确统计软件开发中的四舍五入大问题-C#Round与ToString不同C#的Round和ToString,二者效果是不一样的。decimal d = 1.345m;Response.Write(Math.Round(d, 2)); // 1.34Response.Write(decimal.Round(d, 2)); // 1.34Response.Write(d.ToString("0.00")); // 1.35Math.Round与decimal.Round是一样的,都是靠近最近的偶数。ToString则不一样了,ToString是遇五就入。我就要用Math.Round...

.NET 开发触摸屏、查询机用查询软件

我们在博物馆、图书馆、办事大厅……往往会看到一些查询机,这些查询机的软件,通常基于Windows的,我们如何把这个Windows挡在后面,不让用户进入Windows界面,是我们所要考虑的。一、全屏、最上层创建一个WinForm,设置窗体为无边框、最大化,就实现了全屏(记住要无边框的配合)。为了避免被其他窗体挡住,我们需要设置TopMost。以下是代码,当然其实用不着明写代码,直接为窗体配置属性就可以了。FormBorderStyle=FormBorderStyle.None;WindowState=FormWindowState.Maximized;TopMost=true;二、使用WebView查询软件的内容通常是网页表现,所以我们建议使用WebView来呈现这些网页,请参见:http://www.benshu.com/c/2014/02/6218.asp。三、调出屏幕触摸键盘Windows10在平板模式下,通常会自动调出屏幕触摸键盘,在控制面板中也可以设置非平板模式下,也弹出。但是,由于我们使用WebView,这个WebView中的网页,不能自动调出屏幕触摸键盘,所以我们需要手动触...

.NET 中用 Cef 代替 WebBrowser 开发基于 Chrome 内核的浏览器-WebView 缺点

.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-创建简单浏览器在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-JS调用C#在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-C#调用JS在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-WebView缺点WebView暴露的方法比较少,所以功能不是很全,比如我们遇到某网页会弹出一个alert,我们想干掉它,不让这个alert弹出来,可是办不到。我们也想在LoadComplete事件中发送回车键,让这个alert关闭。可是办不到,因为只有我们在点击了这个alert之后,这个LoadComplete中的代码才会继续执行。也就是说,这个alert居然阻止了我C#的代码执行。在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-创建简单浏览器在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-JS调用C#在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-C...

.NET 中用 Cef 代替 WebBrowser 开发基于 Chrome 内核的浏览器-C# 调用 JS

.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-创建简单浏览器在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-JS调用C#在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-C#调用JS在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-WebView缺点BrowserSettingsbs=newBrowserSettings();WebViewwv=newWebView(url,bs);wv.Parent=this;wv.Dock=DockStyle.Fill;wv.LoadCompleted+=Wv_LoadCompleted;privatevoidWv_LoadCompleted(objectsender,LoadCompletedEventArgsurl){WebViewwv=(WebView)sender;wv.ExecuteScript(@"脚本脚本脚本");} 在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-创建简单浏览器...

.NET 中用 Cef 代替 WebBrowser 开发基于 Chrome 内核的浏览器-JS 调用 C#

.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-创建简单浏览器在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-JS调用C#在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-C#调用JS在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-WebView缺点本文以JavaScript中实现最小化WinForm窗体为例。///<summary>///JavaScript回调。///</summary>publicclassJsCallback{privateFormContainerForm{get;set;}publicJsCallback(FormcontainerForm){ContainerForm=containerForm;}///<summary>///JS调用示例:jsCallback.minWin();。jsCallback为注册对象名称。///</summary>publicvoidminWin(){Contai...

.NET 中用 Cef 代替 WebBrowser 开发基于 Chrome 内核的浏览器-创建简单浏览器

.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-创建简单浏览器在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-JS调用C#在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-C#调用JS在.NET中用Cef代替WebBrowser开发基于Chrome内核的浏览器-WebView缺点CEF:ChromiumEmbeddedFramework。它依赖如下项目:Chromium:基础,网络堆栈,线程,消息机制,log,进程控制,生成Webbrowser。WebKit:提供DOM解析,布局,事件处理,渲染,HTML5JS的API。V8:JS引擎。Skia:2D图形库。Angle:3D图形转换,和DirectX有关。版本CEF1:单进程工具调用ChromiumWebkitAPI。CEF2:多进程工具建立在ChromiumBrowser。CEF3:多进程工具调用ChromiumContentAPI。使用首先在http://www.benshu.com/tools/downloads/Cef.zip 下载...

托瓦兹的Linux开发

前面写了"Linux之前UNIX的发展史"中提到UNIX历史,也说了Linux是由芬兰人Torvalds所开发的,那么他是如何开发Linux的呢?根据什么来的呢?1988年托瓦兹进入赫尔辛基大学,计算机科学系,学业的需要与自己的兴趣,他接触到了UNIX这个操作系统。当时整个赫尔辛基只有一部最新的UNIX系统,同时仅提供16个终端机,光是等待使用UNIX的时间就够呛的,满足不了需求。托瓦兹就想我何不自己搞一部UNIX来玩呢?但这要写内核程序,谈何容易啊!但就在不久之后,他知道有一个类似UNIX的系统,并且与UNIX完全兼容,还可以在Intel386机器上运行的操作系统,那就是之前提到的谭宁邦教授为了教学而编写的Minix系统,且上面还附上源码,所以托瓦兹由这个源码学习到很多内核程序设计的概念!后来他想改写一个自己想要的操作系统,就开始了内核程序的编写。他参考Minix的设计理念与书上的程序代码,仔细研究出386个人计算机的性能优化,然后使用GNU自由软件将内核代码与386结合在一起,写出他所需要的内核程序。他希望这个程序可以获得大家一些修改建议,就将这个内核放置在网络上供下载,同时在BB...
开发笔记 开发笔记·2023-04-15

linux之CentOS将php和mysql命令加入环境变量

PHP和mysql命令没有加入到环境变量之前,执行“php-v”命令查看当前php版本信息时时,则会提示命令不存在的错误。为了使用方便,需要将php和mysql命令加到系统命令中。下面我们详细介绍一下在linux下将php和mysql加入到环境变量中的方法(假设php和mysql分别安装在/usr/local/webserver/php/和/usr/local/webserver/mysql/中)。方法一:直接运行命令exportPATH=$PATH:/usr/local/webserver/php/bin和exportPATH=$PATH:/usr/local/webserver/mysql/bin使用这种方法,只会对当前会话有效,也就是说每当登出或注销系统以后,PATH设置就会失效,只是临时生效。方法二:执行vi~/.bash_profile修改文件中PATH一行,将/usr/local/webserver/php/bin和/usr/local/webserver/mysql/bin加入到PATH=$PATH:$HOME/bin一行之后这种方法只对当前登录用户生效方法三:修改/et...
首页上一页12345...下一页尾页