草庐IT

mb_substr

全部标签

php - 从字符串 php 的末尾开始 Substr?

我有这种数组,我会把它弄得非常简单易懂$picture=('artist2-1_thumb.jpg','artist2-2.jpg','artist2-3_thumb.jpg','artist2-4.jpg','artist2-5_thumb.jpg');现在我想使用substr来获得只有拇指的新数组,得到这样的新数组$picturethumbs=('artist2-1_thumb.jpg','artist2-3_thumb.jpg','artist2-5_thumb.jpg');可以从哪里开始? 最佳答案 你可以使用array_f

php - 如何正确地 substr html 实体?

我有这样的:$mytext="that'sreally"confusing"and<absolutly>silly";echosubstr($mytext,0,6);这种情况下的输出将是:that&#而不是that's我想要的是将html实体计为1个字符然后是substr,因为我总是以损坏的html或文本末尾的一些模糊字符结束。请不要建议我对它进行html解码然后substr然后编码,我想要一个干净的方法:)谢谢 最佳答案 有两种方法:您可以解码HTML实体,substr()然后编码;或者您

php - phps mb_ereg 函数是否可以安全使用(由于 ereg 被弃用)?

我只是想调整我的代码以兼容php5.3(6.0)。所以我想用相应的preg函数替换所有对ereg函数的调用。但后来我看到mb_ereg函数没有被标记为已弃用。所以我只是想知道依赖它们是否省钱?是否知道它们也将很快被宣布弃用,或者它甚至是文档中的缺陷? 最佳答案 我不会依赖他们。preg函数更快、更高效、更强大并且天真地支持UTF8。我建议使用preg函数来满足您的所有正则表达式需求。但要直接回答您的问题,mb_ereg似乎并没有被弃用... 关于php-phpsmb_ereg函数是否可以

php - 在 PHP 中生成高达 100MB 的随机字符串以进行测试的有效方法?

出于测试目的,我需要这样的函数:/***@paramint$sizeInBytes**@returnsstringwithrandomdata*/functionrandomData($sizeInBytes){...}有什么有效实现的想法吗?需要速度而不是真正的随机性(更像是一种“loremipsum”)。我最简单的想法是在文件系统中使用真正的大文件并通过流获取所需的大小。但这至少需要一个100MB的文件。有没有更好的办法? 最佳答案 如果您有可用的内存,只创建一个很长的字符串怎么样?这不应该花那么长时间:)$x=str_repe

php - fatal error : call to undefined function mb_strtolower() in OpenCart

这个问题在这里已经有了答案:Fatalerror:Calltoundefinedfunctionmb_strtolower()(4个答案)关闭8年前。我正在使用opencart1.5.6这周我遇到了一次严重的服务器崩溃,不得不对服务器进行镜像恢复。现在一切都恢复正常,除了现在在opencart中,当我尝试以客户身份登录或去结账时,我收到此错误并且不知道如何解决它。SyntaxError:JSON.parse:unexpectedcharacteratline1column1oftheJSONdataFatalerror:Calltoundefinedfunctionmb_strtolo

相当于 JavaScript 的 substring() 的 PHP

JavaScript有两个方便的子字符串函数:substring(from,to)和substr(start,length)。这意味着我可以决定“当我得到从位置X开始的子字符串时,我是否要指定结束的字符串位置或子字符串的长度是多少个字符?”(from,to版本的一个很好的用法是使用search()来确定两个位置。)PHP的substr()允许您指定子字符串的长度。是否有内置的字符串函数让您指定结束字符的位置? 最佳答案 我觉得这个问题更多的是逻辑问题。您可以使用substr()函数完成这两项操作。例如。对于第一个substring(

php - PHP 中是否有类似于整数的 substr() 的函数?

我有一个电话号码,它将在我的数据库中记录为一个整数(例如1234512312345),但我想在网页上表示为(12345)123-12345。如果它是一个字符串,我会使用substr,但将它转换为strval似乎不够优雅。虽然我明白整数和字符串是绝对不同的,但有没有一种方法可以做到这一点而无需自己编写效率低下的函数? 最佳答案 你可以试试vprintf或vsprintf与sscanf$data=1234512312345;vprintf("(%d)-%d-%d",sscanf($data,"%5d%3d%5d"));Output(12

PHP:有没有办法调用不区分大小写的 substr_count()?

正如问题所说:有没有办法调用大小写不区分substr_count()? 最佳答案 没有原生方法,你可以这样做:substr_count(strtoupper($haystack),strtoupper($needle));你当然可以把它写成一个函数:functionsubstri_count($haystack,$needle){returnsubstr_count(strtoupper($haystack),strtoupper($needle));}在使用大小写更改来比较字符串时,请注意火鸡测试。http://www.moser

php - mb_convert_encoding() 不适用于 phpunit

出于某种原因,在phpunit中运行mb_convert_encoding时,我得到了意想不到的结果。例如执行以下操作:var_dump(mb_convert_encoding(utf8_decode('ö'),'UTF-8')==='ö')上面在PHP-FPM和PHP-CLI下返回bool(true),但是在PHPunit下返回false,mb_convert_encoding()正在做一些事情,它只是编码到一个乱七八糟的字符串。 最佳答案 我猜你正在使用一组不同的mbstringini设置。这是解决该问题的一种方法。首先,您可以

上传 "larger"(超过 2MB)文件时出现 PHP 文件上传问题

我在尝试上传“更大”的文件时遇到了问题,我相信我所允许的限制大约是2MB。我已经上传了多个小于2MB的文件类型(.js、.png、.jpg、.psd、.php),但是任何超过2MB的文件都会失败。1.8MBpsd图片已完成2.4MBpsd图像无效(与1.8相同的文件,只是更大)我已经将php.ini更改为以下内容:upload_max_filesize=20M(从2M更改)post_max_size=40M(从2M改为)max_execution_time=60(从45改为)max_input_time=180(从30改为)memory_limit=48M(从8M改为)我还在我的hta