草庐IT

imap_sort

全部标签

php - imap_search 限制返回的消息数量

我有从邮箱中获取消息的PHP脚本。我使用imap_search函数:$emails=imap_search($mbox,'UNSEEN');有没有办法限制返回消息的数量。现在在巨大的邮箱上我收到了5000条消息。我只想要按日期排序的前20个。有办法吗?谢谢。 最佳答案 imap_search函数有一个CRITERIA属性,您可以使用它以多种方式限制消息:ALL-返回符合其余条件的所有消息ANSWERED-匹配设置了\ANSWERED标志的消息BCC"string"-在Bcc:字段中匹配带有"string"的消息BEFORE"date

imap - 抑制仿冒PHP imap_open()通知: insecure server advertised AUTH=PLAIN

我的日志文件中出现了一堆乱七八糟的虚假警告,我想在不抑制合法消息的情况下抑制它们:PHP通知:未知:安全问题:不安全的服务器在第0行的未知中公布AUTH=PLAIN(errflg=1)(我正在连接到一个IMAP服务,该服务只在没有第三方用户的服务器上监听本地主机。) 最佳答案 您可以做的一件事是使用imap_errors和imap_alerts函数,请将此代码放在imap_close之前。imap_errors();imap_alerts();这些函数的作用是返回所有已发生的错误和警报,然后将它们清除。如果您不调用这些函数,它们将在

PHP:从 POP3 或 IMAP 下载收到的电子邮件,解析它,并在服务器上将其标记为已读/删除

我正在尝试将传入电子邮件添加到我的Web应用程序。它基于CodeIgniter和PHP构建,据我所知,我还没有找到任何CI库来执行此操作。我想要做的是有一个Controller通过POP3或IMAP连接到我的邮箱,并检索消息、解析它然后将其从服务器中删除。从postfix/etc传输邮件在我的服务器设置上不起作用。任何建议都会非常有帮助。谢谢! 最佳答案 http://ca.php.net/imap$mb=imap_open("{host:port/imap}","username","password");$messageCoun

php - 日语的 sort()

如果我将我当前的语言环境设置为日语,我怎样才能使日语字符总是比非日语字符具有更高的优先级。例如,现在英文字符总是出现在片假名字符之前。我怎样才能扭转这种影响?抱歉,不是很清楚。如你所见here.最后的成绩有Java、NVIDIA和Windows的ファイアウォール。排在日本文字前三位。可以把那些放在最后吗? 最佳答案 使用usort()而不是sort()因此您可以按照自己的方式定义比较标准。试试这个简单的方法。我已经用here的例子试过了,并且有效。functionmccompare($a,$b){$fca=ord(substr($a

php - 如何使用 IMAP 和 php 将邮件附件下载到特定文件夹

我正在开发一个网站,用户可以在其中邮寄票证并将任何类型的文件附加到特定的邮件ID。我需要将邮件主题、内容和附件添加到数据库中。我正在使用cron执行此操作。除了附件外,一切都很完美。我看过一些创建下载链接的帖子。因为我使用的是cron,所以我无法手动完成。$hostname='{xxxx.net:143/novalidate-cert}INBOX';$username='yyy@xxxx.net';$password='zzzz';/*trytoconnect*/$inbox=imap_open($hostname,$username,$password)ordie('Cannotco

php - 如何在 php.ini 中启用 imap

我试图在我的服务器中安装vtiger以安装vtiger我们需要启用imap我尝试通过删除使用php.ini启用imap;来自extension=php_imap.dll但这不起作用。安装页面仍然显示未启用imap。我可以使用任何php函数启用它吗?任何帮助将不胜感激 最佳答案 在Ubuntu和debian上,更好的方法是以这种方式启用它:sudoaptinstallphp-imapsudophpenmodimapsudoserviceapache2restart在CentOS7+上sudoyuminstallphp-imap在Ubu

sorting - 安卓sqlite : order by to sort international characters

我有一个android数据库,它有一个名为“名称”的列。“名称”列可以包含国际字符。现在当我查询这个数据库时,我想对名称列进行排序。排序时应考虑国际字符。我读过有一个适用于android的UNICODE整理器,但我无法在查询中使用它。任何人都知道如何使用UNICODE整理器。我真的可以使用UNICODE整理器进行排序吗?任何指针将不胜感激。 最佳答案 试试这些:SELECTnameFROMtableORDERBYnameCOLLATELOCALIZED或SELECTnameFROMtableORDERBYnameCOLLATEUNI

安卓联系人 : Incorrect localized collation/sorting

这是我的问题:我正在编写一个替代的联系人应用程序,该应用程序指定用于许多不同的语言和字母。当以我自己的语言(瑞典语)查询名称时,使用变音字符的名称对我来说以不合逻辑的方式排序,但我想对unicode来说是合乎逻辑的:应该是/瑞典式:A,B,C,...,Z,Å,Ä,Ö。查询结果:A,Å,Ä,B,...,N,O,Ö,P,...我认为这将是任何偏离拉丁字母表的语言的问题。我所做的所有测试都在模拟器上进行。我的开发团队正在对框架进行更改,因此也欢迎提供低级别的答案。Uriuri=ContactsContract.Contacts.CONTENT_URI;String[]projection=n

c++ - partial_sort 与 nth_element 的复杂性

根据cppreference.com,C++STL排序算法的复杂度为:排序:O(Nlog(N))partial_sort:“大约”O(Nlog(M)),其中M是距离(中间优先)nth_element:“平均”O(N)但是,这似乎意味着,您可以使用nth_element然后对第一个范围进行排序,而不是执行partial_sort,从而给出O(N+Mlog(M)),比O(Nlog(M))好一点。这是真的吗?我最好避免partial_sort吗? 最佳答案 std::partial_sort会对您感兴趣的M元素执行部分排序。另一方面std

c++ - 使用 std::sort() 按元素 block 排序

我有一个边数组,它被定义为C风格的double组,其中每4个double定义一个边,如下所示:double*p=...;printf("edge1:%lf%lf%lf%lf\n",p[0],p[1],p[2],p[3]);printf("edge2:%lf%lf%lf%lf\n",p[4],p[5],p[6],p[7]);所以我想使用std::sort()按边长对它进行排序。如果它是structEdge{doublex1,y1,x2,y2;};Edge*p;,我可以走了。但在这种情况下,double数组的block大小不是由指针类型表示的。qsort()允许您显式指定block大小,但