检查字符串的第一个和最后一个字符在PHP中是否相同

时间:2017-07-30 19:53:42

标签: php

我想检查第一个和最后一个字符是否相同。我试过这段代码:

function myFunction(string $s): string {
  return $s[0]!=$s[-1]?"No":"Yes";
}

通过使用PHP 7.0.8的在线解释器(repl.it)可以正常工作,但是在使用PHP 7的机器中我遇到了这个错误:

  

未初始化的字符串偏移量:-1

2 个答案:

答案 0 :(得分:1)

您可以使用PHP 7.1中的负面索引:https://wiki.php.net/rfc/negative-string-offsets

只需使用其他方法:

function myFunction(string $s): string {
  return $s[0] != substr($s, -1) ? "No":"Yes";
}

答案 1 :(得分:1)

在php 旧版 中,您可以执行以下操作: -

<?php

$string = "abcda";

function myFunction($string){
  $string_array = str_split($string);
  return ($string_array[0]!=end($string_array))? "No":"Yes";
}

echo myFunction($string);

输出: - https://eval.in/839485 https://eval.in/839480

从php 7.1版本开始 ,您可以使用如下的负面索引: -

<?php

$string = "abcda";

function myFunction(string $s): string {
  return $s[0] != substr($s, -1) ? "No":"Yes";
}

echo myFunction($string);

输出: - https://eval.in/839477